// $ANTLR start "semicolonStatement" // C:\\Users\\Dominik Halfkann\\Documents\\Visual Studio 2010\\Projects\\SGLParserTester\\SGL\\AntlrParser\\SGL.g:177:1: semicolonStatement : ( variableDeclarationList | variableAssignment | variableUnaryChange | methodCall | objectMethod | breakStat | returnStat ) ';' ; public SGLParser.semicolonStatement_return semicolonStatement() // throws RecognitionException [1] { SGLParser.semicolonStatement_return retval = new SGLParser.semicolonStatement_return(); retval.Start = input.LT(1); object root_0 = null; IToken char_literal27 = null; SGLParser.variableDeclarationList_return variableDeclarationList20 = default(SGLParser.variableDeclarationList_return); SGLParser.variableAssignment_return variableAssignment21 = default(SGLParser.variableAssignment_return); SGLParser.variableUnaryChange_return variableUnaryChange22 = default(SGLParser.variableUnaryChange_return); SGLParser.methodCall_return methodCall23 = default(SGLParser.methodCall_return); SGLParser.objectMethod_return objectMethod24 = default(SGLParser.objectMethod_return); SGLParser.breakStat_return breakStat25 = default(SGLParser.breakStat_return); SGLParser.returnStat_return returnStat26 = default(SGLParser.returnStat_return); object char_literal27_tree=null; try { // C:\\Users\\Dominik Halfkann\\Documents\\Visual Studio 2010\\Projects\\SGLParserTester\\SGL\\AntlrParser\\SGL.g:178:2: ( ( variableDeclarationList | variableAssignment | variableUnaryChange | methodCall | objectMethod | breakStat | returnStat ) ';' ) // C:\\Users\\Dominik Halfkann\\Documents\\Visual Studio 2010\\Projects\\SGLParserTester\\SGL\\AntlrParser\\SGL.g:178:4: ( variableDeclarationList | variableAssignment | variableUnaryChange | methodCall | objectMethod | breakStat | returnStat ) ';' { root_0 = (object)adaptor.GetNilNode(); // C:\\Users\\Dominik Halfkann\\Documents\\Visual Studio 2010\\Projects\\SGLParserTester\\SGL\\AntlrParser\\SGL.g:178:4: ( variableDeclarationList | variableAssignment | variableUnaryChange | methodCall | objectMethod | breakStat | returnStat ) int alt6 = 7; switch ( input.LA(1) ) { case IntType: case BooleanType: case StringType: case FloatType: case ObjectType: case 57: { alt6 = 1; } break; case Identifier: { switch ( input.LA(2) ) { case 52: { alt6 = 4; } break; case 58: { alt6 = 2; } break; case 82: case 83: { alt6 = 3; } break; case 59: { alt6 = 5; } break; default: NoViableAltException nvae_d6s2 = new NoViableAltException("", 6, 2, input); throw nvae_d6s2; } } break; case 65: { alt6 = 6; } break; case 66: { alt6 = 7; } break; default: NoViableAltException nvae_d6s0 = new NoViableAltException("", 6, 0, input); throw nvae_d6s0; } switch (alt6) { case 1 : // C:\\Users\\Dominik Halfkann\\Documents\\Visual Studio 2010\\Projects\\SGLParserTester\\SGL\\AntlrParser\\SGL.g:178:5: variableDeclarationList { PushFollow(FOLLOW_variableDeclarationList_in_semicolonStatement427); variableDeclarationList20 = variableDeclarationList(); state.followingStackPointer--; adaptor.AddChild(root_0, variableDeclarationList20.Tree); } break; case 2 : // C:\\Users\\Dominik Halfkann\\Documents\\Visual Studio 2010\\Projects\\SGLParserTester\\SGL\\AntlrParser\\SGL.g:179:4: variableAssignment { PushFollow(FOLLOW_variableAssignment_in_semicolonStatement433); variableAssignment21 = variableAssignment(); state.followingStackPointer--; adaptor.AddChild(root_0, variableAssignment21.Tree); } break; case 3 : // C:\\Users\\Dominik Halfkann\\Documents\\Visual Studio 2010\\Projects\\SGLParserTester\\SGL\\AntlrParser\\SGL.g:180:4: variableUnaryChange { PushFollow(FOLLOW_variableUnaryChange_in_semicolonStatement439); variableUnaryChange22 = variableUnaryChange(); state.followingStackPointer--; adaptor.AddChild(root_0, variableUnaryChange22.Tree); } break; case 4 : // C:\\Users\\Dominik Halfkann\\Documents\\Visual Studio 2010\\Projects\\SGLParserTester\\SGL\\AntlrParser\\SGL.g:181:4: methodCall { PushFollow(FOLLOW_methodCall_in_semicolonStatement445); methodCall23 = methodCall(); state.followingStackPointer--; adaptor.AddChild(root_0, methodCall23.Tree); } break; case 5 : // C:\\Users\\Dominik Halfkann\\Documents\\Visual Studio 2010\\Projects\\SGLParserTester\\SGL\\AntlrParser\\SGL.g:182:4: objectMethod { PushFollow(FOLLOW_objectMethod_in_semicolonStatement450); objectMethod24 = objectMethod(); state.followingStackPointer--; adaptor.AddChild(root_0, objectMethod24.Tree); } break; case 6 : // C:\\Users\\Dominik Halfkann\\Documents\\Visual Studio 2010\\Projects\\SGLParserTester\\SGL\\AntlrParser\\SGL.g:183:4: breakStat { PushFollow(FOLLOW_breakStat_in_semicolonStatement455); breakStat25 = breakStat(); state.followingStackPointer--; adaptor.AddChild(root_0, breakStat25.Tree); } break; case 7 : // C:\\Users\\Dominik Halfkann\\Documents\\Visual Studio 2010\\Projects\\SGLParserTester\\SGL\\AntlrParser\\SGL.g:184:4: returnStat { PushFollow(FOLLOW_returnStat_in_semicolonStatement460); returnStat26 = returnStat(); state.followingStackPointer--; adaptor.AddChild(root_0, returnStat26.Tree); } break; } char_literal27=(IToken)Match(input,55,FOLLOW_55_in_semicolonStatement465); } retval.Stop = input.LT(-1); retval.Tree = (object)adaptor.RulePostProcessing(root_0); adaptor.SetTokenBoundaries(retval.Tree, (IToken) retval.Start, (IToken) retval.Stop); } catch (RecognitionException re) { ReportError(re); Recover(input,re); // Conversion of the second argument necessary, but harmless retval.Tree = (object)adaptor.ErrorNode(input, (IToken) retval.Start, input.LT(-1), re); } finally { } return retval; }
// $ANTLR start "semicolonStatement" // D:\\sgl4c#\\NewSGLGramma\\SGL.g:193:1: semicolonStatement : ( objectMethodCall | methodCall | assignmentList | unaryExpression | breakStat | returnStat ) ';' ; public SGLParser.semicolonStatement_return semicolonStatement() // throws RecognitionException [1] { SGLParser.semicolonStatement_return retval = new SGLParser.semicolonStatement_return(); retval.Start = input.LT(1); int semicolonStatement_StartIndex = input.Index(); object root_0 = null; IToken char_literal25 = null; SGLParser.objectMethodCall_return objectMethodCall19 = default(SGLParser.objectMethodCall_return); SGLParser.methodCall_return methodCall20 = default(SGLParser.methodCall_return); SGLParser.assignmentList_return assignmentList21 = default(SGLParser.assignmentList_return); SGLParser.unaryExpression_return unaryExpression22 = default(SGLParser.unaryExpression_return); SGLParser.breakStat_return breakStat23 = default(SGLParser.breakStat_return); SGLParser.returnStat_return returnStat24 = default(SGLParser.returnStat_return); object char_literal25_tree=null; try { if ( (state.backtracking > 0) && AlreadyParsedRule(input, 8) ) { return retval; } // D:\\sgl4c#\\NewSGLGramma\\SGL.g:194:2: ( ( objectMethodCall | methodCall | assignmentList | unaryExpression | breakStat | returnStat ) ';' ) // D:\\sgl4c#\\NewSGLGramma\\SGL.g:194:4: ( objectMethodCall | methodCall | assignmentList | unaryExpression | breakStat | returnStat ) ';' { root_0 = (object)adaptor.GetNilNode(); // D:\\sgl4c#\\NewSGLGramma\\SGL.g:194:4: ( objectMethodCall | methodCall | assignmentList | unaryExpression | breakStat | returnStat ) int alt6 = 6; switch ( input.LA(1) ) { case Identifier: { switch ( input.LA(2) ) { case 59: { alt6 = 2; } break; case 80: case 81: { alt6 = 4; } break; case 56: case 58: { alt6 = 1; } break; default: if ( state.backtracking > 0 ) {state.failed = true; return retval;} NoViableAltException nvae_d6s1 = new NoViableAltException("", 6, 1, input); throw nvae_d6s1; } } break; case VarStartInit: { alt6 = 3; } break; case 83: { alt6 = 5; } break; case 84: { alt6 = 6; } break; default: if ( state.backtracking > 0 ) {state.failed = true; return retval;} NoViableAltException nvae_d6s0 = new NoViableAltException("", 6, 0, input); throw nvae_d6s0; } switch (alt6) { case 1 : // D:\\sgl4c#\\NewSGLGramma\\SGL.g:194:5: objectMethodCall { PushFollow(FOLLOW_objectMethodCall_in_semicolonStatement430); objectMethodCall19 = objectMethodCall(); state.followingStackPointer--; if (state.failed) return retval; if ( state.backtracking == 0 ) adaptor.AddChild(root_0, objectMethodCall19.Tree); } break; case 2 : // D:\\sgl4c#\\NewSGLGramma\\SGL.g:195:4: methodCall { PushFollow(FOLLOW_methodCall_in_semicolonStatement435); methodCall20 = methodCall(); state.followingStackPointer--; if (state.failed) return retval; if ( state.backtracking == 0 ) adaptor.AddChild(root_0, methodCall20.Tree); } break; case 3 : // D:\\sgl4c#\\NewSGLGramma\\SGL.g:196:4: assignmentList { PushFollow(FOLLOW_assignmentList_in_semicolonStatement441); assignmentList21 = assignmentList(); state.followingStackPointer--; if (state.failed) return retval; if ( state.backtracking == 0 ) adaptor.AddChild(root_0, assignmentList21.Tree); } break; case 4 : // D:\\sgl4c#\\NewSGLGramma\\SGL.g:197:4: unaryExpression { PushFollow(FOLLOW_unaryExpression_in_semicolonStatement447); unaryExpression22 = unaryExpression(); state.followingStackPointer--; if (state.failed) return retval; if ( state.backtracking == 0 ) adaptor.AddChild(root_0, unaryExpression22.Tree); } break; case 5 : // D:\\sgl4c#\\NewSGLGramma\\SGL.g:198:4: breakStat { PushFollow(FOLLOW_breakStat_in_semicolonStatement453); breakStat23 = breakStat(); state.followingStackPointer--; if (state.failed) return retval; if ( state.backtracking == 0 ) adaptor.AddChild(root_0, breakStat23.Tree); } break; case 6 : // D:\\sgl4c#\\NewSGLGramma\\SGL.g:199:4: returnStat { PushFollow(FOLLOW_returnStat_in_semicolonStatement458); returnStat24 = returnStat(); state.followingStackPointer--; if (state.failed) return retval; if ( state.backtracking == 0 ) adaptor.AddChild(root_0, returnStat24.Tree); } break; } char_literal25=(IToken)Match(input,52,FOLLOW_52_in_semicolonStatement463); if (state.failed) return retval; } retval.Stop = input.LT(-1); if ( (state.backtracking==0) ) { retval.Tree = (object)adaptor.RulePostProcessing(root_0); adaptor.SetTokenBoundaries(retval.Tree, (IToken) retval.Start, (IToken) retval.Stop);} } catch (RecognitionException re) { ReportError(re); Recover(input,re); // Conversion of the second argument necessary, but harmless retval.Tree = (object)adaptor.ErrorNode(input, (IToken) retval.Start, input.LT(-1), re); } finally { if ( state.backtracking > 0 ) { Memoize(input, 8, semicolonStatement_StartIndex); } } return retval; }