source: trunk/src/declarative/qml/parser/qdeclarativejsgrammar_p.h

Last change on this file was 846, checked in by Dmitry A. Kuminov, 14 years ago

trunk: Merged in qt 4.7.2 sources from branches/vendor/nokia/qt.

File size: 5.4 KB
Line 
1/****************************************************************************
2**
3** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
4** All rights reserved.
5** Contact: Nokia Corporation (qt-info@nokia.com)
6**
7** This file is part of the QtCore module of the Qt Toolkit.
8**
9** $QT_BEGIN_LICENSE:LGPL$
10** Commercial Usage
11** Licensees holding valid Qt Commercial licenses may use this file in
12** accordance with the Qt Commercial License Agreement provided with the
13** Software or, alternatively, in accordance with the terms contained in
14** a written agreement between you and Nokia.
15**
16** GNU Lesser General Public License Usage
17** Alternatively, this file may be used under the terms of the GNU Lesser
18** General Public License version 2.1 as published by the Free Software
19** Foundation and appearing in the file LICENSE.LGPL included in the
20** packaging of this file. Please review the following information to
21** ensure the GNU Lesser General Public License version 2.1 requirements
22** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
23**
24** In addition, as a special exception, Nokia gives you certain additional
25** rights. These rights are described in the Nokia Qt LGPL Exception
26** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
27**
28** GNU General Public License Usage
29** Alternatively, this file may be used under the terms of the GNU
30** General Public License version 3.0 as published by the Free Software
31** Foundation and appearing in the file LICENSE.GPL included in the
32** packaging of this file. Please review the following information to
33** ensure the GNU General Public License version 3.0 requirements will be
34** met: http://www.gnu.org/copyleft/gpl.html.
35**
36** If you have questions regarding the use of this file, please contact
37** Nokia at qt-info@nokia.com.
38** $QT_END_LICENSE$
39**
40****************************************************************************/
41
42//
43// W A R N I N G
44// -------------
45//
46// This file is not part of the Qt API. It exists for the convenience
47// of other Qt classes. This header file may change from version to
48// version without notice, or even be removed.
49//
50// We mean it.
51//
52
53// This file was generated by qlalr - DO NOT EDIT!
54#ifndef QDECLARATIVEJSGRAMMAR_P_H
55#define QDECLARATIVEJSGRAMMAR_P_H
56
57#include <QtCore/qglobal.h>
58
59QT_BEGIN_NAMESPACE
60
61class QDeclarativeJSGrammar
62{
63public:
64 enum VariousConstants {
65 EOF_SYMBOL = 0,
66 REDUCE_HERE = 100,
67 SHIFT_THERE = 99,
68 T_AND = 1,
69 T_AND_AND = 2,
70 T_AND_EQ = 3,
71 T_AS = 91,
72 T_AUTOMATIC_SEMICOLON = 62,
73 T_BREAK = 4,
74 T_CASE = 5,
75 T_CATCH = 6,
76 T_COLON = 7,
77 T_COMMA = 8,
78 T_COMMENT = 88,
79 T_CONST = 84,
80 T_CONTINUE = 9,
81 T_DEBUGGER = 85,
82 T_DEFAULT = 10,
83 T_DELETE = 11,
84 T_DIVIDE_ = 12,
85 T_DIVIDE_EQ = 13,
86 T_DO = 14,
87 T_DOT = 15,
88 T_ELSE = 16,
89 T_EQ = 17,
90 T_EQ_EQ = 18,
91 T_EQ_EQ_EQ = 19,
92 T_FALSE = 83,
93 T_FEED_JS_EXPRESSION = 96,
94 T_FEED_JS_PROGRAM = 98,
95 T_FEED_JS_SOURCE_ELEMENT = 97,
96 T_FEED_JS_STATEMENT = 95,
97 T_FEED_UI_OBJECT_MEMBER = 94,
98 T_FEED_UI_PROGRAM = 93,
99 T_FINALLY = 20,
100 T_FOR = 21,
101 T_FUNCTION = 22,
102 T_GE = 23,
103 T_GT = 24,
104 T_GT_GT = 25,
105 T_GT_GT_EQ = 26,
106 T_GT_GT_GT = 27,
107 T_GT_GT_GT_EQ = 28,
108 T_IDENTIFIER = 29,
109 T_IF = 30,
110 T_IMPORT = 90,
111 T_IN = 31,
112 T_INSTANCEOF = 32,
113 T_LBRACE = 33,
114 T_LBRACKET = 34,
115 T_LE = 35,
116 T_LPAREN = 36,
117 T_LT = 37,
118 T_LT_LT = 38,
119 T_LT_LT_EQ = 39,
120 T_MINUS = 40,
121 T_MINUS_EQ = 41,
122 T_MINUS_MINUS = 42,
123 T_MULTILINE_STRING_LITERAL = 87,
124 T_NEW = 43,
125 T_NOT = 44,
126 T_NOT_EQ = 45,
127 T_NOT_EQ_EQ = 46,
128 T_NULL = 81,
129 T_NUMERIC_LITERAL = 47,
130 T_ON = 92,
131 T_OR = 48,
132 T_OR_EQ = 49,
133 T_OR_OR = 50,
134 T_PLUS = 51,
135 T_PLUS_EQ = 52,
136 T_PLUS_PLUS = 53,
137 T_PROPERTY = 66,
138 T_PUBLIC = 89,
139 T_QUESTION = 54,
140 T_RBRACE = 55,
141 T_RBRACKET = 56,
142 T_READONLY = 68,
143 T_REMAINDER = 57,
144 T_REMAINDER_EQ = 58,
145 T_RESERVED_WORD = 86,
146 T_RETURN = 59,
147 T_RPAREN = 60,
148 T_SEMICOLON = 61,
149 T_SIGNAL = 67,
150 T_STAR = 63,
151 T_STAR_EQ = 64,
152 T_STRING_LITERAL = 65,
153 T_SWITCH = 69,
154 T_THIS = 70,
155 T_THROW = 71,
156 T_TILDE = 72,
157 T_TRUE = 82,
158 T_TRY = 73,
159 T_TYPEOF = 74,
160 T_VAR = 75,
161 T_VOID = 76,
162 T_WHILE = 77,
163 T_WITH = 78,
164 T_XOR = 79,
165 T_XOR_EQ = 80,
166
167 ACCEPT_STATE = 645,
168 RULE_COUNT = 347,
169 STATE_COUNT = 646,
170 TERMINAL_COUNT = 101,
171 NON_TERMINAL_COUNT = 106,
172
173 GOTO_INDEX_OFFSET = 646,
174 GOTO_INFO_OFFSET = 2714,
175 GOTO_CHECK_OFFSET = 2714
176 };
177
178 static const char *const spell [];
179 static const short lhs [];
180 static const short rhs [];
181 static const short goto_default [];
182 static const short action_default [];
183 static const short action_index [];
184 static const short action_info [];
185 static const short action_check [];
186
187 static inline int nt_action (int state, int nt)
188 {
189 const int yyn = action_index [GOTO_INDEX_OFFSET + state] + nt;
190 if (yyn < 0 || action_check [GOTO_CHECK_OFFSET + yyn] != nt)
191 return goto_default [nt];
192
193 return action_info [GOTO_INFO_OFFSET + yyn];
194 }
195
196 static inline int t_action (int state, int token)
197 {
198 const int yyn = action_index [state] + token;
199
200 if (yyn < 0 || action_check [yyn] != token)
201 return - action_default [state];
202
203 return action_info [yyn];
204 }
205};
206
207
208QT_END_NAMESPACE
209#endif // QDECLARATIVEJSGRAMMAR_P_H
210
Note: See TracBrowser for help on using the repository browser.