📄 qscriptgrammar.cpp
字号:
/******************************************************************************** Copyright (C) 1992-2007 Trolltech ASA. All rights reserved.**** This file is part of the QtScript module of the Qt Toolkit.**** This file may be used under the terms of the GNU General Public** License version 2.0 as published by the Free Software Foundation** and appearing in the file LICENSE.GPL included in the packaging of** this file. Please review the following information to ensure GNU** General Public Licensing requirements will be met:** http://trolltech.com/products/qt/licenses/licensing/opensource/**** If you are unsure which license is appropriate for your use, please** review the following information:** http://trolltech.com/products/qt/licenses/licensing/licensingoverview** or contact the sales department at sales@trolltech.com.**** In addition, as a special exception, Trolltech gives you certain** additional rights. These rights are described in the Trolltech GPL** Exception version 1.0, which can be found at** http://www.trolltech.com/products/qt/gplexception/ and in the file** GPL_EXCEPTION.txt in this package.**** In addition, as a special exception, Trolltech, as the sole copyright** holder for Qt Designer, grants users of the Qt/Eclipse Integration** plug-in the right for the Qt/Eclipse Integration to link to** functionality provided by Qt Designer and its related libraries.**** Trolltech reserves all rights not expressly granted herein.**** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.******************************************************************************/#include "qscriptgrammar_p.h"#ifndef QT_NO_SCRIPTconst char *const QScriptGrammar::spell [] = { "end of file", "&", "&&", "&=", "break", "case", "catch", ":", ";", "continue", "default", "delete", "/", "/=", "do", ".", "else", "=", "==", "===", "finally", "for", "function", ">=", ">", ">>", ">>=", ">>>", ">>>=", "identifier", "if", "in", "instanceof", "{", "[", "<=", "(", "<", "<<", "<<=", "-", "-=", "--", "new", "!", "!=", "!==", "numeric literal", "|", "|=", "||", "+", "+=", "++", "?", "}", "]", "%", "%=", "return", ")", ";", 0, "*", "*=", "string literal", "switch", "this", "throw", "~", "try", "typeof", "var", "void", "while", "with", "^", "^=", "null", "true", "false", "const", "reserved word",#ifndef QLALR_NO_QSCRIPTGRAMMAR_DEBUG_INFO"Program", "PrimaryExpression", "ElisionOpt", "ElementList", "PropertyNameAndValueListOpt", "Expression", "AssignmentExpression", "Elision", "PropertyNameAndValueList", "PropertyName", "MemberExpression", "FunctionExpression", "ExtraIdentifiersMarker", "Arguments", "NewExpression", "CallExpression", "ArgumentList", "LeftHandSideExpression", "PostfixExpression", "UnaryExpression", "MultiplicativeExpression", "AdditiveExpression", "ShiftExpression", "RelationalExpression", "RelationalExpressionNotIn", "EqualityExpression", "EqualityExpressionNotIn", "BitwiseANDExpression", "BitwiseANDExpressionNotIn", "BitwiseXORExpression", "BitwiseXORExpressionNotIn", "BitwiseORExpression", "BitwiseORExpressionNotIn", "LogicalANDExpression", "LogicalANDExpressionNotIn", "LogicalORExpression", "LogicalORExpressionNotIn", "ConditionalExpression", "ConditionalExpressionNotIn", "AssignmentExpressionNotIn", "AssignmentOperator", "ExpressionOpt", "ExpressionNotIn", "ExpressionNotInOpt", "Statement", "Block", "VariableStatement", "EmptyStatement", "ExpressionStatement", "IfStatement", "IterationStatement", "ContinueStatement", "BreakStatement", "ReturnStatement", "WithStatement", "LabelledStatement", "SwitchStatement", "ThrowStatement", "TryStatement", "StatementListOpt", "StatementList", "VariableDeclarationKind", "VariableDeclarationList", "VariableDeclaration", "VariableDeclarationListNotIn", "VariableDeclarationNotIn", "InitialiserOpt", "InitialiserNotInOpt", "Initialiser", "InitialiserNotIn", "CaseBlock", "CaseClausesOpt", "DefaultClause", "CaseClauses", "CaseClause", "Catch", "Finally", "FunctionDeclaration", "FormalParameterListOpt", "FunctionBodyOpt", "IdentifierOpt", "FormalParameterList", "FunctionBody", "SourceElements", "SourceElement", "$accept"#endif // QLALR_NO_QSCRIPTGRAMMAR_DEBUG_INFO};const int QScriptGrammar::lhs [] = { 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 86, 86, 90, 90, 85, 85, 91, 91, 92, 92, 92, 93, 93, 93, 93, 95, 93, 97, 97, 98, 98, 98, 98, 96, 96, 99, 99, 100, 100, 101, 101, 101, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 103, 103, 103, 103, 104, 104, 104, 105, 105, 105, 105, 106, 106, 106, 106, 106, 106, 106, 107, 107, 107, 107, 107, 107, 108, 108, 108, 108, 108, 109, 109, 109, 109, 109, 110, 110, 111, 111, 112, 112, 113, 113, 114, 114, 115, 115, 116, 116, 117, 117, 118, 118, 119, 119, 120, 120, 121, 121, 89, 89, 122, 122, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 88, 88, 124, 124, 125, 125, 126, 126, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 128, 143, 143, 142, 142, 129, 129, 144, 144, 145, 145, 147, 147, 146, 148, 151, 149, 149, 152, 150, 150, 130, 131, 131, 132, 132, 133, 133, 133, 133, 133, 133, 133, 134, 134, 134, 134, 135, 135, 135, 135, 136, 136, 137, 139, 153, 153, 156, 156, 154, 154, 157, 155, 138, 140, 140, 141, 141, 141, 158, 159, 160, 94, 164, 164, 161, 161, 162, 162, 165, 83, 166, 166, 167, 167, 163, 163, 87, 87, 168};const int QScriptGrammar:: rhs[] = { 1, 1, 1, 1, 1, 1, 1, 1, 3, 3, 5, 3, 3, 2, 4, 1, 2, 0, 1, 3, 5, 1, 1, 1, 1, 1, 4, 4, 0, 3, 1, 2, 2, 2, 4, 3, 2, 3, 1, 3, 1, 1, 1, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 3, 3, 3, 1, 3, 3, 1, 3, 3, 3, 1, 3, 3, 3, 3, 3, 3, 1, 3, 3, 3, 3, 3, 1, 3, 3, 3, 3, 1, 3, 3, 3, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 5, 1, 5, 1, 3, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 0, 1, 1, 3, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 2, 0, 1, 3, 3, 1, 1, 1, 3, 1, 3, 2, 2, 2, 0, 1, 2, 0, 1, 1, 2, 2, 7, 5, 7, 7, 5, 9, 10, 7, 8, 2, 2, 3, 3, 2, 2, 3, 3, 3, 3, 5, 5, 3, 5, 1, 2, 0, 1, 4, 3, 3, 3, 3, 3, 3, 4, 5, 2, 8, 8, 1, 3, 0, 1, 0, 1, 1, 1, 1, 2, 1, 1, 0, 1, 0, 1, 2};#ifndef QLALR_NO_QSCRIPTGRAMMAR_DEBUG_INFOconst int QScriptGrammar::rule_info [] = { 84, 67 , 84, 29 , 84, 78 , 84, 79 , 84, 80 , 84, 47 , 84, 65 , 84, 12 , 84, 34, 85, 56 , 84, 34, 86, 56 , 84, 34, 86, 8, 85, 56 , 84, 33, 87, 55 , 84, 36, 88, 60 , 86, 85, 89 , 86, 86, 8, 85, 89 , 90, 8 , 90, 90, 8 , 85 , 85, 90 , 91, 92, 7, 89 , 91, 91, 8, 92, 7, 89 , 92, 29 , 92, 65 , 92, 47 , 93, 84 , 93, 94 , 93, 93, 34, 88, 56 , 93, 93, 15, 95, 29 , 95 , 93, 43, 93, 96 , 97, 93 , 97, 43, 97 , 98, 93, 96 , 98, 98, 96 , 98, 98, 34, 88, 56 , 98, 98, 15, 29 , 96, 36, 60 , 96, 36, 99, 60 , 99, 89 , 99, 99, 8, 89 , 100, 97 , 100, 98 , 101, 100 , 101, 100, 53 , 101, 100, 42 , 102, 101 , 102, 11, 102 , 102, 73, 102 , 102, 71, 102 , 102, 53, 102 , 102, 42, 102 , 102, 51, 102 , 102, 40, 102 , 102, 69, 102 , 102, 44, 102 , 103, 102 , 103, 103, 63, 102 , 103, 103, 12, 102 , 103, 103, 57, 102 , 104, 103 , 104, 104, 51, 103 , 104, 104, 40, 103 , 105, 104 , 105, 105, 38, 104 , 105, 105, 25, 104 , 105, 105, 27, 104 , 106, 105 , 106, 106, 37, 105 , 106, 106, 24, 105 , 106, 106, 35, 105 , 106, 106, 23, 105 , 106, 106, 32, 105 , 106, 106, 31, 105 , 107, 105 , 107, 107, 37, 105 , 107, 107, 24, 105 , 107, 107, 35, 105 , 107, 107, 23, 105 , 107, 107, 32, 105 , 108, 106 , 108, 108, 18, 106 , 108, 108, 45, 106 , 108, 108, 19, 106 , 108, 108, 46, 106 , 109, 107 , 109, 109, 18, 107 , 109, 109, 45, 107 , 109, 109, 19, 107 , 109, 109, 46, 107 , 110, 108 , 110, 110, 1, 108 , 111, 109 , 111, 111, 1, 109 , 112, 110 , 112, 112, 76, 110 , 113, 111 , 113, 113, 76, 111 , 114, 112 , 114, 114, 48, 112 , 115, 113 , 115, 115, 48, 113 , 116, 114 , 116, 116, 2, 114 , 117, 115 , 117, 117, 2, 115 , 118, 116 , 118, 118, 50, 116 , 119, 117 , 119, 119, 50, 117 , 120, 118 , 120, 118, 54, 89, 7, 89 , 121, 119 , 121, 119, 54, 122, 7, 122 , 89, 120 , 89, 100, 123, 89 , 122, 121 , 122, 100, 123, 122 , 123, 17 , 123, 64 , 123, 13 , 123, 58 , 123, 52 , 123, 41 , 123, 39 , 123, 26 , 123, 28 , 123, 3 , 123, 77 , 123, 49 , 88, 89 , 88, 88, 8, 89 , 124 , 124, 88 , 125, 122 , 125, 125, 8, 122 , 126 , 126, 125 , 127, 128 , 127, 129 , 127, 130 , 127, 131 , 127, 132 , 127, 133 , 127, 134 , 127, 135 , 127, 136 , 127, 137 , 127, 138 , 127, 139 , 127, 140 , 127, 141 , 128, 33, 142, 55 , 143, 127 , 143, 143, 127 , 142 , 142, 143 , 129, 144, 145, 62 , 129, 144, 145, 61 , 144, 81 , 144, 72 , 145, 146 , 145, 145, 8, 146 , 147, 148 , 147, 147, 8, 148 , 146, 29, 149 , 148, 29, 150 , 151, 17, 89 , 149 , 149, 151 , 152, 17, 122 , 150 , 150, 152 , 130, 61 , 131, 88, 62 , 131, 88, 61 , 132, 30, 36, 88, 60, 127, 16, 127 , 132, 30, 36, 88, 60, 127 , 133, 14, 127, 74, 36, 88, 60, 62 , 133, 14, 127, 74, 36, 88, 60, 61 , 133, 74, 36, 88, 60, 127 , 133, 21, 36, 126, 61, 124, 61, 124, 60, 127 , 133, 21, 36, 72, 147, 61, 124, 61, 124, 60, 127 , 133, 21, 36, 100, 31, 88, 60, 127 , 133, 21, 36, 72, 148, 31, 88, 60, 127 , 134, 9, 62 , 134, 9, 61 , 134, 9, 29, 62 , 134, 9, 29, 61 , 135, 4, 62 , 135, 4, 61 , 135, 4, 29, 62 , 135, 4, 29, 61 , 136, 59, 124, 62 , 136, 59, 124, 61 , 137, 75, 36, 88, 60, 127 , 139, 66, 36, 88, 60, 153 , 153, 33, 154, 55 , 153, 33, 154, 155, 154, 55 , 156, 157 , 156, 156, 157 , 154 , 154, 156 , 157, 5, 88, 7, 142 , 155, 10, 7, 142 , 138, 29, 7, 127 , 140, 68, 88, 62 , 140, 68, 88, 61 , 141, 70, 128, 158 , 141, 70, 128, 159 , 141, 70, 128, 158, 159 , 158, 6, 36, 29, 60, 128 , 159, 20, 128 , 160, 22, 29, 36, 161, 60, 33, 162, 55 , 94, 22, 163, 36, 161, 60, 33, 162, 55 , 164, 29 , 164, 164, 8, 29 , 161 , 161, 164 , 162 , 162, 165 , 165, 166 , 83, 166 , 166, 167 , 166, 166, 167 , 167, 127 , 167, 160 , 163 , 163, 29 , 87 , 87, 91 , 168, 83, 0};const int QScriptGrammar::rule_index [] = { 0, 2, 4, 6, 8, 10, 12, 14, 16, 20, 24, 30, 34, 38, 41, 46, 48, 51, 52, 54, 58, 64, 66, 68, 70, 72, 74, 79, 84, 85, 89, 91, 94, 97, 100, 105, 109, 112, 116, 118, 122, 124, 126, 128, 131, 134, 136, 139, 142, 145, 148, 151, 154, 157, 160, 163, 165, 169, 173, 177, 179, 183, 187, 189, 193, 197, 201, 203, 207, 211, 215, 219, 223, 227, 229, 233, 237, 241, 245, 249, 251, 255, 259, 263, 267, 269, 273, 277, 281, 285, 287, 291, 293, 297, 299, 303, 305, 309, 311, 315, 317, 321, 323, 327, 329, 333, 335, 339, 341, 345, 347, 353, 355, 361, 363, 367, 369, 373, 375, 377, 379, 381, 383, 385, 387, 389, 391, 393, 395, 397, 399, 403, 404, 406, 408, 412, 413, 415, 417, 419, 421, 423, 425, 427, 429, 431, 433, 435, 437, 439, 441, 443, 447, 449, 452, 453, 455, 459, 463, 465, 467, 469, 473, 475, 479, 482, 485, 488, 489, 491, 494, 495, 497, 499, 502, 505, 513, 519, 527, 535, 541, 551, 562, 570, 579, 582, 585, 589, 593, 596, 599, 603, 607, 611, 615, 621, 627, 631, 637, 639, 642, 643, 645, 650, 654, 658, 662, 666, 670, 674, 679, 685, 688, 697, 706, 708, 712, 713, 715, 716, 718, 720, 722, 724, 727, 729, 731, 732, 734, 735, 737};#endif // QLALR_NO_QSCRIPTGRAMMAR_DEBUG_INFOconst int QScriptGrammar::action_default [] = { 0, 63, 130, 94, 102, 98, 138, 145, 42, 114, 144, 140, 90, 0, 141, 226, 26, 142, 143, 148, 43, 106, 110, 31, 60, 41, 46, 25, 0, 80, 146, 67, 223, 222, 225, 149, 0, 159, 0, 0, 8, 0, 5, 0, 227, 2, 0, 229, 18, 0, 0, 0, 0, 0, 3, 6, 0, 0, 132, 173, 7, 0, 1, 0, 0, 4, 0, 0, 160, 0, 0, 0, 150, 151, 56, 0, 139, 147, 0, 0, 43, 62, 227, 2, 229, 45, 44, 0, 0, 0, 58, 59, 57, 0, 228, 217, 218, 0, 215, 0, 216, 0, 219, 220, 0, 221, 214, 224, 0, 230, 0, 22, 24, 23, 0, 20, 0, 0, 0, 21, 12, 61, 0, 91, 0, 0, 0, 0, 81, 0, 0, 0, 0, 0, 0, 71, 0, 0, 0, 65, 66, 64, 69, 73, 72, 70, 68, 83, 82, 84, 0, 99, 0, 95, 34, 0, 0, 0, 36, 0, 0, 35, 131, 0, 39, 37, 0, 38, 40, 174, 175, 0, 127, 120, 118, 125, 126, 124, 123, 129, 122, 121, 119, 128, 115, 0, 103, 0, 0, 107, 0, 0, 111, 33, 29, 0, 0, 28, 0, 27, 231, 189, 0, 190, 191, 192, 185, 0, 186, 187, 188, 47, 0, 0, 0, 0, 0, 178, 179, 136, 134, 96, 104, 100, 116, 92, 137, 0, 43, 108, 112, 85, 74, 0, 0, 93, 0, 0, 0, 0, 86, 0, 0, 0, 0, 0, 78, 76, 79, 77, 75, 88, 87, 89, 0, 101, 0, 97, 0, 135,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -