// $ANTLR start "structassign" // Interp.g:116:1: structassign returns [StructAssignDeclaration ret] : (el1= variable '.' el2= variable ) ; public InterpParser.structassign_return structassign() // throws RecognitionException [1] { InterpParser.structassign_return retval = new InterpParser.structassign_return(); retval.Start = input.LT(1); object root_0 = null; IToken char_literal35 = null; InterpParser.variable_return el1 = null; InterpParser.variable_return el2 = null; object char_literal35_tree=null; retval.ret = new StructAssignDeclaration(); try { // Interp.g:120:2: ( (el1= variable '.' el2= variable ) ) // Interp.g:120:3: (el1= variable '.' el2= variable ) { root_0 = (object)adaptor.GetNilNode(); // Interp.g:120:3: (el1= variable '.' el2= variable ) // Interp.g:120:4: el1= variable '.' el2= variable { PushFollow(FOLLOW_variable_in_structassign559); el1 = variable(); state.followingStackPointer--; adaptor.AddChild(root_0, el1.Tree); retval.ret.setName(((el1 != null) ? el1.ret : null)); char_literal35=(IToken)Match(input,19,FOLLOW_19_in_structassign562); char_literal35_tree = (object)adaptor.Create(char_literal35); adaptor.AddChild(root_0, char_literal35_tree); PushFollow(FOLLOW_variable_in_structassign565); el2 = variable(); state.followingStackPointer--; adaptor.AddChild(root_0, el2.Tree); retval.ret.setObj(((el2 != null) ? el2.ret : null)); } } 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 "structassign" // C:\\Documents and Settings\\Administrator\\Desktop\\SPINA\\Interp_CSharp\\Interp_CSharp\\Interp.g:109:1: structassign returns [StructAssignDeclaration ret] : (el1= variable '.' el2= variable ) ; public InterpParser.structassign_return structassign() // throws RecognitionException [1] { InterpParser.structassign_return retval = new InterpParser.structassign_return(); retval.Start = input.LT(1); object root_0 = null; IToken char_literal33 = null; InterpParser.variable_return el1 = null; InterpParser.variable_return el2 = null; object char_literal33_tree=null; retval.ret = new StructAssignDeclaration(); try { dbg.EnterRule(GrammarFileName, "structassign"); if ( RuleLevel==0 ) {dbg.Commence();} IncRuleLevel(); dbg.Location(109, 1); try { // C:\\Documents and Settings\\Administrator\\Desktop\\SPINA\\Interp_CSharp\\Interp_CSharp\\Interp.g:113:2: ( (el1= variable '.' el2= variable ) ) dbg.EnterAlt(1); // C:\\Documents and Settings\\Administrator\\Desktop\\SPINA\\Interp_CSharp\\Interp_CSharp\\Interp.g:113:3: (el1= variable '.' el2= variable ) { root_0 = (object)adaptor.GetNilNode(); dbg.Location(113,3); // C:\\Documents and Settings\\Administrator\\Desktop\\SPINA\\Interp_CSharp\\Interp_CSharp\\Interp.g:113:3: (el1= variable '.' el2= variable ) dbg.EnterAlt(1); // C:\\Documents and Settings\\Administrator\\Desktop\\SPINA\\Interp_CSharp\\Interp_CSharp\\Interp.g:113:4: el1= variable '.' el2= variable { dbg.Location(113,7); PushFollow(FOLLOW_variable_in_structassign536); el1 = variable(); state.followingStackPointer--; adaptor.AddChild(root_0, el1.Tree); dbg.Location(113,17); retval.ret.setName(((el1 != null) ? el1.ret : null)); dbg.Location(113,48); char_literal33=(IToken)Match(input,19,FOLLOW_19_in_structassign539); char_literal33_tree = (object)adaptor.Create(char_literal33); adaptor.AddChild(root_0, char_literal33_tree); dbg.Location(113,54); PushFollow(FOLLOW_variable_in_structassign542); el2 = variable(); state.followingStackPointer--; adaptor.AddChild(root_0, el2.Tree); dbg.Location(113,64); retval.ret.setObj(((el2 != null) ? el2.ret : null)); } } 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 { } dbg.Location(113, 95); } finally { dbg.ExitRule(GrammarFileName, "structassign"); DecRuleLevel(); if ( RuleLevel==0 ) {dbg.Terminate();} } return retval; }