summaryrefslogtreecommitdiffstats
path: root/src/script/parser
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@nokia.com>2009-11-17 13:22:03 (GMT)
committerSimon Hausmann <simon.hausmann@nokia.com>2009-11-17 13:22:03 (GMT)
commitfaf6d0de6e3b8168fbd6f04c5380f47d350e2a22 (patch)
treed3c35778ad9c7abe68b681b39dd004027fd50880 /src/script/parser
parent3a92f40e1faf4d81f5071a66558b051a9fda727e (diff)
parent499a9aaabad0756cbca7b39751684308a6ba88ea (diff)
downloadQt-faf6d0de6e3b8168fbd6f04c5380f47d350e2a22.zip
Qt-faf6d0de6e3b8168fbd6f04c5380f47d350e2a22.tar.gz
Qt-faf6d0de6e3b8168fbd6f04c5380f47d350e2a22.tar.bz2
Merge remote branch 'staging/4.6' into 4.6
Diffstat (limited to 'src/script/parser')
-rwxr-xr-xsrc/script/parser/make-parser.sh53
-rw-r--r--src/script/parser/qscript.g62
-rw-r--r--src/script/parser/qscriptgrammar.cpp16
-rw-r--r--src/script/parser/qscriptgrammar_p.h39
-rw-r--r--src/script/parser/qscriptparser.cpp11
-rw-r--r--src/script/parser/qscriptparser_p.h1
6 files changed, 126 insertions, 56 deletions
diff --git a/src/script/parser/make-parser.sh b/src/script/parser/make-parser.sh
new file mode 100755
index 0000000..d0c71fb
--- /dev/null
+++ b/src/script/parser/make-parser.sh
@@ -0,0 +1,53 @@
+#!/bin/sh
+#############################################################################
+##
+## Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+## All rights reserved.
+## Contact: Nokia Corporation (qt-info@nokia.com)
+##
+## This file is the build configuration utility of the Qt Toolkit.
+##
+## $QT_BEGIN_LICENSE:LGPL$
+## No Commercial Usage
+## This file contains pre-release code and may not be distributed.
+## You may use this file in accordance with the terms and conditions
+## contained in the Technology Preview License Agreement accompanying
+## this package.
+##
+## GNU Lesser General Public License Usage
+## Alternatively, this file may be used under the terms of the GNU Lesser
+## General Public License version 2.1 as published by the Free Software
+## Foundation and appearing in the file LICENSE.LGPL included in the
+## packaging of this file. Please review the following information to
+## ensure the GNU Lesser General Public License version 2.1 requirements
+## will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+##
+## In addition, as a special exception, Nokia gives you certain additional
+## rights. These rights are described in the Nokia Qt LGPL Exception
+## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+##
+## If you have questions regarding the use of this file, please contact
+## Nokia at qt-info@nokia.com.
+##
+##
+##
+##
+##
+##
+##
+##
+## $QT_END_LICENSE$
+##
+#############################################################################
+
+me=$(dirname $0)
+mkdir -p $me/out
+(cd $me/out && ../../../../util/qlalr/qlalr --qt --no-lines ../qscript.g)
+
+for f in $me/out/*.h $me/out/*.cpp; do
+ n=$(basename $f)
+ cp $f $n
+done
+
+git diff .
+
diff --git a/src/script/parser/qscript.g b/src/script/parser/qscript.g
index c708a56..2d61713 100644
--- a/src/script/parser/qscript.g
+++ b/src/script/parser/qscript.g
@@ -60,8 +60,7 @@
%start Program
-/.
-/****************************************************************************
+/./****************************************************************************
**
** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
@@ -69,12 +68,24 @@
**
** This file is part of the QtScript module of the Qt Toolkit.
**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
** contained in the Technology Preview License Agreement accompanying
** this package.
-** In addition, as a special exception, Nokia gives you certain
-** additional rights. These rights are described in the Nokia Qt LGPL
-** Exception version 1.1, included in the file LGPL_EXCEPTION.txt in this
-** package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** If you have questions regarding the use of this file, please contact
** Nokia at qt-info@nokia.com.
@@ -90,20 +101,13 @@
**
****************************************************************************/
+// This file was generated by qlalr - DO NOT EDIT!
+
+
#include <QtCore/QtDebug>
#include <string.h>
-#include "qscriptengine.h"
-#include "qscriptengine_p.h"
-#include "qscriptvalueimpl_p.h"
-#include "qscriptcontext_p.h"
-#include "qscriptmember_p.h"
-#include "qscriptobject_p.h"
-#include "qscriptlexer_p.h"
-#include "qscriptast_p.h"
-#include "qscriptnodepool_p.h"
-
#define Q_SCRIPT_UPDATE_POSITION(node, startloc, endloc) do { \
node->startLine = startloc.startLine; \
node->startColumn = startloc.startColumn; \
@@ -113,8 +117,7 @@
./
-/:
-/****************************************************************************
+/:/****************************************************************************
**
** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
@@ -122,10 +125,25 @@
**
** This file is part of the QtScript module of the Qt Toolkit.
**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
** contained in the Technology Preview License Agreement accompanying
** this package.
-** additional rights. These rights are described in the Nokia Qt LGPL
-** Exception version 1.1, included in the file LGPL_EXCEPTION.txt in this
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
** If you have questions regarding the use of this file, please contact
** Nokia at qt-info@nokia.com.
**
@@ -135,10 +153,14 @@
**
**
**
+**
** $QT_END_LICENSE$
**
****************************************************************************/
+// This file was generated by qlalr - DO NOT EDIT!
+
+
//
// W A R N I N G
// -------------
diff --git a/src/script/parser/qscriptgrammar.cpp b/src/script/parser/qscriptgrammar.cpp
index f1445ce..03eb526 100644
--- a/src/script/parser/qscriptgrammar.cpp
+++ b/src/script/parser/qscriptgrammar.cpp
@@ -1,4 +1,3 @@
-// This file was generated by qlalr - DO NOT EDIT!
/****************************************************************************
**
** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
@@ -22,6 +21,7 @@
**
****************************************************************************/
+// This file was generated by qlalr - DO NOT EDIT!
#include "qscriptgrammar_p.h"
QT_BEGIN_NAMESPACE
@@ -50,7 +50,7 @@ const char *const QScriptGrammar::spell [] = {
#endif // QLALR_NO_QSCRIPTGRAMMAR_DEBUG_INFO
};
-const int QScriptGrammar::lhs [] = {
+const short QScriptGrammar::lhs [] = {
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 87, 87, 92, 92, 86,
86, 89, 89, 93, 93, 93, 93, 94, 94, 94,
@@ -79,7 +79,7 @@ const int QScriptGrammar::lhs [] = {
163, 97, 167, 167, 164, 164, 165, 165, 168, 84,
169, 169, 170, 170, 166, 166, 88, 88, 171};
-const int QScriptGrammar:: rhs[] = {
+const short QScriptGrammar::rhs [] = {
1, 1, 1, 1, 1, 1, 1, 1, 1, 3,
3, 5, 3, 4, 3, 2, 4, 1, 2, 0,
1, 3, 5, 1, 1, 1, 1, 1, 1, 1,
@@ -411,7 +411,7 @@ const int QScriptGrammar::rule_index [] = {
803, 805, 808, 810, 812, 813, 815, 816, 818};
#endif // QLALR_NO_QSCRIPTGRAMMAR_DEBUG_INFO
-const int QScriptGrammar::action_default [] = {
+const short QScriptGrammar::action_default [] = {
0, 98, 165, 129, 137, 133, 173, 180, 77, 149,
179, 187, 175, 125, 0, 176, 264, 62, 177, 178,
183, 78, 141, 145, 66, 95, 76, 81, 61, 0,
@@ -460,7 +460,7 @@ const int QScriptGrammar::action_default [] = {
15, 88, 86, 90, 87, 85, 89, 204, 197, 0,
205, 201, 0, 203, 193, 0, 194, 198};
-const int QScriptGrammar::goto_default [] = {
+const short QScriptGrammar::goto_default [] = {
29, 28, 439, 437, 113, 112, 14, 2, 438, 111,
114, 194, 24, 17, 190, 26, 8, 201, 21, 27,
77, 25, 1, 32, 30, 270, 13, 264, 3, 260,
@@ -471,7 +471,7 @@ const int QScriptGrammar::goto_default [] = {
460, 324, 395, 399, 402, 398, 397, 417, 418, 16,
100, 107, 96, 99, 106, 108, 33, 0};
-const int QScriptGrammar::action_index [] = {
+const short QScriptGrammar::action_index [] = {
1318, 79, -84, 56, 39, -17, -84, -84, 169, -84,
-84, -84, -84, 216, 149, -84, -84, -84, -84, -84,
-84, 475, 68, 100, 180, 184, -84, -84, -84, 99,
@@ -568,7 +568,7 @@ const int QScriptGrammar::action_index [] = {
-88, -88, -88, -88, -88, -88, -88, -88, -88, -88,
-88, -88, 5, -88, -88, -56, -88, -88};
-const int QScriptGrammar::action_info [] = {
+const short QScriptGrammar::action_info [] = {
305, 307, 109, 400, 400, 400, 273, 105, 416, 302,
297, 295, 293, 423, 273, 151, 313, 321, 406, 407,
424, 295, 422, 198, 420, 149, 313, 353, -47, 396,
@@ -759,7 +759,7 @@ const int QScriptGrammar::action_info [] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0};
-const int QScriptGrammar::action_check [] = {
+const short QScriptGrammar::action_check [] = {
61, 60, 55, 5, 5, 5, 1, 33, 33, 61,
8, 76, 48, 29, 1, 8, 2, 29, 55, 7,
60, 76, 36, 8, 20, 7, 2, 16, 7, 33,
diff --git a/src/script/parser/qscriptgrammar_p.h b/src/script/parser/qscriptgrammar_p.h
index d3fec86..b75ee16 100644
--- a/src/script/parser/qscriptgrammar_p.h
+++ b/src/script/parser/qscriptgrammar_p.h
@@ -21,11 +21,6 @@
**
****************************************************************************/
-// This file was generated by qlalr - DO NOT EDIT!
-
-#ifndef QSCRIPTGRAMMAR_P_H
-#define QSCRIPTGRAMMAR_P_H
-
//
// W A R N I N G
// -------------
@@ -37,6 +32,10 @@
// We mean it.
//
+// This file was generated by qlalr - DO NOT EDIT!
+#ifndef QSCRIPTGRAMMAR_P_H
+#define QSCRIPTGRAMMAR_P_H
+
#include <QtCore/qglobal.h>
QT_BEGIN_NAMESPACE
@@ -141,33 +140,28 @@ public:
GOTO_CHECK_OFFSET = 1562
};
- static const char *const spell [];
- static const int lhs [];
- static const int rhs [];
+ static const char *const spell [];
+ static const short lhs [];
+ static const short rhs [];
#ifndef QLALR_NO_QSCRIPTGRAMMAR_DEBUG_INFO
static const int rule_index [];
static const int rule_info [];
#endif // QLALR_NO_QSCRIPTGRAMMAR_DEBUG_INFO
- static const int goto_default [];
- static const int action_default [];
- static const int action_index [];
- static const int action_info [];
- static const int action_check [];
+ static const short goto_default [];
+ static const short action_default [];
+ static const short action_index [];
+ static const short action_info [];
+ static const short action_check [];
static inline int nt_action (int state, int nt)
{
- const int *const goto_index = &action_index [GOTO_INDEX_OFFSET];
- const int *const goto_check = &action_check [GOTO_CHECK_OFFSET];
-
- const int yyn = goto_index [state] + nt;
-
- if (yyn < 0 || goto_check [yyn] != nt)
+ const int yyn = action_index [GOTO_INDEX_OFFSET + state] + nt;
+ if (yyn < 0 || action_check [GOTO_CHECK_OFFSET + yyn] != nt)
return goto_default [nt];
- const int *const goto_info = &action_info [GOTO_INFO_OFFSET];
- return goto_info [yyn];
+ return action_info [GOTO_INFO_OFFSET + yyn];
}
static inline int t_action (int state, int token)
@@ -181,6 +175,7 @@ public:
}
};
-QT_END_NAMESPACE
+QT_END_NAMESPACE
#endif // QSCRIPTGRAMMAR_P_H
+
diff --git a/src/script/parser/qscriptparser.cpp b/src/script/parser/qscriptparser.cpp
index abcc6a4..509c4b1 100644
--- a/src/script/parser/qscriptparser.cpp
+++ b/src/script/parser/qscriptparser.cpp
@@ -1,5 +1,3 @@
-// This file was generated by qlalr - DO NOT EDIT!
-
/****************************************************************************
**
** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
@@ -23,12 +21,13 @@
**
****************************************************************************/
+// This file was generated by qlalr - DO NOT EDIT!
+
+
#include <QtCore/QtDebug>
#include <string.h>
-#include "qscriptast_p.h"
-
#define Q_SCRIPT_UPDATE_POSITION(node, startloc, endloc) do { \
node->startLine = startloc.startLine; \
node->startColumn = startloc.startColumn; \
@@ -1118,9 +1117,9 @@ case 266: {
error_message += QLatin1String (", ");
first = false;
- error_message += QLatin1Char('`');
+ error_message += QLatin1String("`");
error_message += QLatin1String (spell [expected_tokens [s]]);
- error_message += QLatin1Char('\'');
+ error_message += QLatin1String("'");
}
}
diff --git a/src/script/parser/qscriptparser_p.h b/src/script/parser/qscriptparser_p.h
index e18326b..2a42b41 100644
--- a/src/script/parser/qscriptparser_p.h
+++ b/src/script/parser/qscriptparser_p.h
@@ -23,6 +23,7 @@
// This file was generated by qlalr - DO NOT EDIT!
+
//
// W A R N I N G
// -------------