⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qscript.g

📁 奇趣公司比较新的qt/emd版本
💻 G
📖 第 1 页 / 共 4 页
字号:
/.case $rule_number: {  sym(1).Node = 0;} break;./InitialiserNotInOpt: InitialiserNotIn ;EmptyStatement: T_SEMICOLON ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::EmptyStatement> (driver->nodePool());  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(1));} break;./ExpressionStatement: Expression T_AUTOMATIC_SEMICOLON ;  -- automatic semicolonExpressionStatement: Expression T_SEMICOLON ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::ExpressionStatement> (driver->nodePool(), sym(1).Expression);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(2));} break;./IfStatement: T_IF T_LPAREN Expression T_RPAREN Statement T_ELSE Statement ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::IfStatement> (driver->nodePool(), sym(3).Expression, sym(5).Statement, sym(7).Statement);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(7));} break;./IfStatement: T_IF T_LPAREN Expression T_RPAREN Statement ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::IfStatement> (driver->nodePool(), sym(3).Expression, sym(5).Statement);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(5));} break;./IterationStatement: T_DO Statement T_WHILE T_LPAREN Expression T_RPAREN T_AUTOMATIC_SEMICOLON ;  -- automatic semicolonIterationStatement: T_DO Statement T_WHILE T_LPAREN Expression T_RPAREN T_SEMICOLON ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::DoWhileStatement> (driver->nodePool(), sym(2).Statement, sym(5).Expression);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(7));} break;./IterationStatement: T_WHILE T_LPAREN Expression T_RPAREN Statement ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::WhileStatement> (driver->nodePool(), sym(3).Expression, sym(5).Statement);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(5));} break;./IterationStatement: T_FOR T_LPAREN ExpressionNotInOpt T_SEMICOLON ExpressionOpt T_SEMICOLON ExpressionOpt T_RPAREN Statement ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::ForStatement> (driver->nodePool(), sym(3).Expression, sym(5).Expression, sym(7).Expression, sym(9).Statement);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(9));} break;./IterationStatement: T_FOR T_LPAREN T_VAR VariableDeclarationListNotIn T_SEMICOLON ExpressionOpt T_SEMICOLON ExpressionOpt T_RPAREN Statement ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::LocalForStatement> (driver->nodePool(), sym(4).VariableDeclarationList->finish (/*readOnly=*/false), sym(6).Expression, sym(8).Expression, sym(10).Statement);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(10));} break;./IterationStatement: T_FOR T_LPAREN LeftHandSideExpression T_IN Expression T_RPAREN Statement ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::ForEachStatement> (driver->nodePool(), sym(3).Expression, sym(5).Expression, sym(7).Statement);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(7));} break;./IterationStatement: T_FOR T_LPAREN T_VAR VariableDeclarationNotIn T_IN Expression T_RPAREN Statement ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::LocalForEachStatement> (driver->nodePool(), sym(4).VariableDeclaration, sym(6).Expression, sym(8).Statement);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(8));} break;./ContinueStatement: T_CONTINUE T_AUTOMATIC_SEMICOLON ;  -- automatic semicolonContinueStatement: T_CONTINUE T_SEMICOLON ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::ContinueStatement> (driver->nodePool());  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(2));} break;./ContinueStatement: T_CONTINUE T_IDENTIFIER T_AUTOMATIC_SEMICOLON ;  -- automatic semicolonContinueStatement: T_CONTINUE T_IDENTIFIER T_SEMICOLON ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::ContinueStatement> (driver->nodePool(), sym(2).sval);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(3));} break;./BreakStatement: T_BREAK T_AUTOMATIC_SEMICOLON ;  -- automatic semicolonBreakStatement: T_BREAK T_SEMICOLON ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::BreakStatement> (driver->nodePool());  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(2));} break;./BreakStatement: T_BREAK T_IDENTIFIER T_AUTOMATIC_SEMICOLON ;  -- automatic semicolonBreakStatement: T_BREAK T_IDENTIFIER T_SEMICOLON ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::BreakStatement> (driver->nodePool(), sym(2).sval);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(3));} break;./ReturnStatement: T_RETURN ExpressionOpt T_AUTOMATIC_SEMICOLON ;  -- automatic semicolonReturnStatement: T_RETURN ExpressionOpt T_SEMICOLON ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::ReturnStatement> (driver->nodePool(), sym(2).Expression);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(3));} break;./WithStatement: T_WITH T_LPAREN Expression T_RPAREN Statement ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::WithStatement> (driver->nodePool(), sym(3).Expression, sym(5).Statement);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(5));} break;./SwitchStatement: T_SWITCH T_LPAREN Expression T_RPAREN CaseBlock ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::SwitchStatement> (driver->nodePool(), sym(3).Expression, sym(5).CaseBlock);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(5));} break;./CaseBlock: T_LBRACE CaseClausesOpt T_RBRACE ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::CaseBlock> (driver->nodePool(), sym(2).CaseClauses);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(3));} break;./CaseBlock: T_LBRACE CaseClausesOpt DefaultClause CaseClausesOpt T_RBRACE ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::CaseBlock> (driver->nodePool(), sym(2).CaseClauses, sym(3).DefaultClause, sym(4).CaseClauses);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(5));} break;./CaseClauses: CaseClause ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::CaseClauses> (driver->nodePool(), sym(1).CaseClause);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(1));} break;./CaseClauses: CaseClauses CaseClause ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::CaseClauses> (driver->nodePool(), sym(1).CaseClauses, sym(2).CaseClause);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(2));} break;./CaseClausesOpt: ;/.case $rule_number: {  sym(1).Node = 0;} break;./CaseClausesOpt: CaseClauses ;/.case $rule_number: {  sym(1).Node = sym(1).CaseClauses->finish ();  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(1));} break;./CaseClause: T_CASE Expression T_COLON StatementListOpt ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::CaseClause> (driver->nodePool(), sym(2).Expression, sym(4).StatementList);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(4));} break;./DefaultClause: T_DEFAULT T_COLON StatementListOpt ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::DefaultClause> (driver->nodePool(), sym(3).StatementList);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(3));} break;./LabelledStatement: T_IDENTIFIER T_COLON Statement ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::LabelledStatement> (driver->nodePool(), sym(1).sval, sym(3).Statement);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(3));} break;./ThrowStatement: T_THROW Expression T_AUTOMATIC_SEMICOLON ;  -- automatic semicolonThrowStatement: T_THROW Expression T_SEMICOLON ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::ThrowStatement> (driver->nodePool(), sym(2).Expression);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(3));} break;./TryStatement: T_TRY Block Catch ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::TryStatement> (driver->nodePool(), sym(2).Statement, sym(3).Catch);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(3));} break;./TryStatement: T_TRY Block Finally ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::TryStatement> (driver->nodePool(), sym(2).Statement, sym(3).Finally);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(3));} break;./TryStatement: T_TRY Block Catch Finally ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::TryStatement> (driver->nodePool(), sym(2).Statement, sym(3).Catch, sym(4).Finally);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(4));} break;./Catch: T_CATCH T_LPAREN T_IDENTIFIER T_RPAREN Block ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::Catch> (driver->nodePool(), sym(3).sval, sym(5).Statement);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(5));} break;./Finally: T_FINALLY Block ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::Finally> (driver->nodePool(), sym(2).Statement);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(2));} break;./FunctionDeclaration: T_FUNCTION T_IDENTIFIER T_LPAREN FormalParameterListOpt T_RPAREN T_LBRACE FunctionBodyOpt T_RBRACE ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::FunctionDeclaration> (driver->nodePool(), sym(2).sval, sym(4).FormalParameterList, sym(7).FunctionBody);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(8));} break;./FunctionExpression: T_FUNCTION IdentifierOpt T_LPAREN FormalParameterListOpt T_RPAREN T_LBRACE FunctionBodyOpt T_RBRACE ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::FunctionExpression> (driver->nodePool(), sym(2).sval, sym(4).FormalParameterList, sym(7).FunctionBody);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(8));} break;./FormalParameterList: T_IDENTIFIER ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::FormalParameterList> (driver->nodePool(), sym(1).sval);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(1));} break;./FormalParameterList: FormalParameterList T_COMMA T_IDENTIFIER ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::FormalParameterList> (driver->nodePool(), sym(1).FormalParameterList, sym(3).sval);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(3));} break;./FormalParameterListOpt: ;/.case $rule_number: {  sym(1).Node = 0;} break;./FormalParameterListOpt: FormalParameterList ;/.case $rule_number: {  sym(1).Node = sym(1).FormalParameterList->finish ();  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(1));} break;./FunctionBodyOpt: ;/.case $rule_number: {  sym(1).Node = 0;} break;./FunctionBodyOpt: FunctionBody ;FunctionBody: SourceElements ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::FunctionBody> (driver->nodePool(), sym(1).SourceElements->finish ());  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(1));} break;./Program: SourceElements ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::Program> (driver->nodePool(), sym(1).SourceElements->finish ());  driver->changeAbstractSyntaxTree(sym(1).Node);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(1));} break;./SourceElements: SourceElement ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::SourceElements> (driver->nodePool(), sym(1).SourceElement);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(1));} break;./SourceElements: SourceElements SourceElement ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::SourceElements> (driver->nodePool(), sym(1).SourceElements, sym(2).SourceElement);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(2));} break;./SourceElement: Statement ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::StatementSourceElement> (driver->nodePool(), sym(1).Statement);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(1));} break;./SourceElement: FunctionDeclaration ;/.case $rule_number: {  sym(1).Node = QScript::makeAstNode<QScript::AST::FunctionSourceElement> (driver->nodePool(), sym(1).FunctionDeclaration);  Q_SCRIPT_UPDATE_POSITION(sym(1).Node, loc(1), loc(1));} break;./IdentifierOpt: ;/.case $rule_number: {  sym(1).sval = 0;} break;./IdentifierOpt: T_IDENTIFIER ;PropertyNameAndValueListOpt: ;/.case $rule_number: {  sym(1).Node = 0;} break;./PropertyNameAndValueListOpt: PropertyNameAndValueList ;/.          } // switch          state_stack [tos] = nt_action (act, lhs [r] - TERMINAL_COUNT);          if (rhs[r] > 1) {              location_stack[tos - 1].endLine = location_stack[tos + rhs[r] - 2].endLine;              location_stack[tos - 1].endColumn = location_stack[tos + rhs[r] - 2].endColumn;              location_stack[tos] = location_stack[tos + rhs[r] - 1];          }        }      else        {          if (saved_yytoken == -1 && automatic (driver, yytoken) && t_action (state, T_AUTOMATIC_SEMICOLON) > 0)            {              saved_yytoken = yytoken;              yytoken = T_SEMICOLON;              continue;            }          else if ((state == INITIAL_STATE) && (yytoken == 0)) {              // accept empty input              yytoken = T_SEMICOLON;              continue;          }          int ers = state;          int shifts = 0;          int reduces = 0;          int expected_tokens [3];          for (int tk = 0; tk < TERMINAL_COUNT; ++tk)            {              int k = t_action (ers, tk);              if (! k)                continue;              else if (k < 0)                ++reduces;              else if (spell [tk])                {                  if (shifts < 3)                    expected_tokens [shifts] = tk;                  ++shifts;                }            }          error_message.clear ();          if (shifts && shifts < 3)            {              bool first = true;              for (int s = 0; s < shifts; ++s)                {                  if (first)                    error_message += QLatin1String ("Expected ");                  else                    error_message += QLatin1String (", ");                  first = false;                  error_message += QLatin1String("`");                  error_message += QLatin1String (spell [expected_tokens [s]]);                  error_message += QLatin1String("'");                }            }          if (error_message.isEmpty())              error_message = lexer->errorMessage();          error_lineno = lexer->startLineNo();          error_column = lexer->startColumnNo();          return false;        }    }    return false;}./

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -