// $ANTLR start "commonBlock" // C:\\Users\\Dominik Halfkann\\Documents\\Visual Studio 2010\\Projects\\SGLParserTester\\SGL\\AntlrParser\\SGL.g:157:1: commonBlock : ( singleBlock | '{' block '}' ); public SGLParser.commonBlock_return commonBlock() // throws RecognitionException [1] { SGLParser.commonBlock_return retval = new SGLParser.commonBlock_return(); retval.Start = input.LT(1); object root_0 = null; IToken char_literal7 = null; IToken char_literal9 = null; SGLParser.singleBlock_return singleBlock6 = default(SGLParser.singleBlock_return); SGLParser.block_return block8 = default(SGLParser.block_return); object char_literal7_tree=null; object char_literal9_tree=null; try { // C:\\Users\\Dominik Halfkann\\Documents\\Visual Studio 2010\\Projects\\SGLParserTester\\SGL\\AntlrParser\\SGL.g:158:2: ( singleBlock | '{' block '}' ) int alt3 = 2; int LA3_0 = input.LA(1); if ( ((LA3_0 >= Identifier && LA3_0 <= ObjectType) || LA3_0 == 57 || (LA3_0 >= 65 && LA3_0 <= 66)) ) { alt3 = 1; } else if ( (LA3_0 == 49) ) { alt3 = 2; } else { NoViableAltException nvae_d3s0 = new NoViableAltException("", 3, 0, input); throw nvae_d3s0; } switch (alt3) { case 1 : // C:\\Users\\Dominik Halfkann\\Documents\\Visual Studio 2010\\Projects\\SGLParserTester\\SGL\\AntlrParser\\SGL.g:158:4: singleBlock { root_0 = (object)adaptor.GetNilNode(); PushFollow(FOLLOW_singleBlock_in_commonBlock312); singleBlock6 = singleBlock(); state.followingStackPointer--; adaptor.AddChild(root_0, singleBlock6.Tree); } break; case 2 : // C:\\Users\\Dominik Halfkann\\Documents\\Visual Studio 2010\\Projects\\SGLParserTester\\SGL\\AntlrParser\\SGL.g:159:4: '{' block '}' { root_0 = (object)adaptor.GetNilNode(); char_literal7=(IToken)Match(input,49,FOLLOW_49_in_commonBlock317); PushFollow(FOLLOW_block_in_commonBlock320); block8 = block(); state.followingStackPointer--; adaptor.AddChild(root_0, block8.Tree); char_literal9=(IToken)Match(input,50,FOLLOW_50_in_commonBlock322); } break; } 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 "commonBlock" // D:\\sgl4c#\\NewSGLGramma\\SGL.g:173:1: commonBlock : ( singleBlock | '{' block '}' ); public SGLParser.commonBlock_return commonBlock() // throws RecognitionException [1] { SGLParser.commonBlock_return retval = new SGLParser.commonBlock_return(); retval.Start = input.LT(1); int commonBlock_StartIndex = input.Index(); object root_0 = null; IToken char_literal8 = null; IToken char_literal10 = null; SGLParser.singleBlock_return singleBlock7 = default(SGLParser.singleBlock_return); SGLParser.block_return block9 = default(SGLParser.block_return); object char_literal8_tree=null; object char_literal10_tree=null; try { if ( (state.backtracking > 0) && AlreadyParsedRule(input, 5) ) { return retval; } // D:\\sgl4c#\\NewSGLGramma\\SGL.g:174:2: ( singleBlock | '{' block '}' ) int alt3 = 2; int LA3_0 = input.LA(1); if ( (LA3_0 == Identifier || LA3_0 == VarStartInit || (LA3_0 >= 83 && LA3_0 <= 84)) ) { alt3 = 1; } else if ( (LA3_0 == 50) ) { alt3 = 2; } else { if ( state.backtracking > 0 ) {state.failed = true; return retval;} NoViableAltException nvae_d3s0 = new NoViableAltException("", 3, 0, input); throw nvae_d3s0; } switch (alt3) { case 1 : // D:\\sgl4c#\\NewSGLGramma\\SGL.g:174:4: singleBlock { root_0 = (object)adaptor.GetNilNode(); PushFollow(FOLLOW_singleBlock_in_commonBlock348); singleBlock7 = singleBlock(); state.followingStackPointer--; if (state.failed) return retval; if ( state.backtracking == 0 ) adaptor.AddChild(root_0, singleBlock7.Tree); } break; case 2 : // D:\\sgl4c#\\NewSGLGramma\\SGL.g:175:4: '{' block '}' { root_0 = (object)adaptor.GetNilNode(); char_literal8=(IToken)Match(input,50,FOLLOW_50_in_commonBlock353); if (state.failed) return retval; PushFollow(FOLLOW_block_in_commonBlock356); block9 = block(); state.followingStackPointer--; if (state.failed) return retval; if ( state.backtracking == 0 ) adaptor.AddChild(root_0, block9.Tree); char_literal10=(IToken)Match(input,51,FOLLOW_51_in_commonBlock358); if (state.failed) return retval; } break; } 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, 5, commonBlock_StartIndex); } } return retval; }