Inheritance: Antlr.Runtime.ParserRuleReturnScope
コード例 #1
0
ファイル: spinachParser.cs プロジェクト: shranjan/pinac
    // $ANTLR start "range"
    // spinach.g:223:1: range returns [RangeElement ret] : LEFTBRACE e11= variable POINT e12= int_literal 'to' e13= int_literal RIGHTBRACE ;
    public spinachParser.range_return range() // throws RecognitionException [1]
    {   
        spinachParser.range_return retval = new spinachParser.range_return();
        retval.Start = input.LT(1);

        object root_0 = null;

        IToken LEFTBRACE84 = null;
        IToken POINT85 = null;
        IToken string_literal86 = null;
        IToken RIGHTBRACE87 = null;
        spinachParser.variable_return e11 = null;

        spinachParser.int_literal_return e12 = null;

        spinachParser.int_literal_return e13 = null;


        object LEFTBRACE84_tree=null;
        object POINT85_tree=null;
        object string_literal86_tree=null;
        object RIGHTBRACE87_tree=null;


          retval.ret= new RangeElement();

        try 
    	{
            // spinach.g:226:2: ( LEFTBRACE e11= variable POINT e12= int_literal 'to' e13= int_literal RIGHTBRACE )
            // spinach.g:226:3: LEFTBRACE e11= variable POINT e12= int_literal 'to' e13= int_literal RIGHTBRACE
            {
            	root_0 = (object)adaptor.GetNilNode();

            	LEFTBRACE84=(IToken)Match(input,LEFTBRACE,FOLLOW_LEFTBRACE_in_range1296); 
            		LEFTBRACE84_tree = (object)adaptor.Create(LEFTBRACE84);
            		adaptor.AddChild(root_0, LEFTBRACE84_tree);

            	PushFollow(FOLLOW_variable_in_range1302);
            	e11 = variable();
            	state.followingStackPointer--;

            	adaptor.AddChild(root_0, e11.Tree);
            	retval.ret.RANGEVARIABLE = ((e11 != null) ? e11.ret : null);
            	POINT85=(IToken)Match(input,POINT,FOLLOW_POINT_in_range1305); 
            		POINT85_tree = (object)adaptor.Create(POINT85);
            		adaptor.AddChild(root_0, POINT85_tree);

            	PushFollow(FOLLOW_int_literal_in_range1311);
            	e12 = int_literal();
            	state.followingStackPointer--;

            	adaptor.AddChild(root_0, e12.Tree);
            	retval.ret.STARTINGRANGE = ((e12 != null) ? e12.ret : null);
            	string_literal86=(IToken)Match(input,39,FOLLOW_39_in_range1314); 
            		string_literal86_tree = (object)adaptor.Create(string_literal86);
            		adaptor.AddChild(root_0, string_literal86_tree);

            	PushFollow(FOLLOW_int_literal_in_range1319);
            	e13 = int_literal();
            	state.followingStackPointer--;

            	adaptor.AddChild(root_0, e13.Tree);
            	retval.ret.ENDINGRANGE = ((e13 != null) ? e13.ret : null);
            	RIGHTBRACE87=(IToken)Match(input,RIGHTBRACE,FOLLOW_RIGHTBRACE_in_range1322); 
            		RIGHTBRACE87_tree = (object)adaptor.Create(RIGHTBRACE87);
            		adaptor.AddChild(root_0, RIGHTBRACE87_tree);


            }

            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;
    }
コード例 #2
0
ファイル: spinachParser.cs プロジェクト: smanicka/pinac
    // throws RecognitionException [1]
    // $ANTLR start "range"
    // C:\\Users\\Jegan\\Documents\\MSCE\\FALL 09\\SoftwareStudio\\SPINACH-Srinivasan\\ConsoleApplication1\\ConsoleApplication1\\spinach.g:165:1: range returns [RangeElement ret] : LEFTBRACE e11= variable POINT e12= int_literal 'to' e13= int_literal RIGHTBRACE ;
    public spinachParser.range_return range()
    {
        spinachParser.range_return retval = new spinachParser.range_return();
        retval.Start = input.LT(1);

        object root_0 = null;

        IToken LEFTBRACE79 = null;
        IToken POINT80 = null;
        IToken string_literal81 = null;
        IToken RIGHTBRACE82 = null;
        spinachParser.variable_return e11 = null;

        spinachParser.int_literal_return e12 = null;

        spinachParser.int_literal_return e13 = null;

        object LEFTBRACE79_tree=null;
        object POINT80_tree=null;
        object string_literal81_tree=null;
        object RIGHTBRACE82_tree=null;

          retval.ret= new RangeElement();

        try
        {
            // C:\\Users\\Jegan\\Documents\\MSCE\\FALL 09\\SoftwareStudio\\SPINACH-Srinivasan\\ConsoleApplication1\\ConsoleApplication1\\spinach.g:168:2: ( LEFTBRACE e11= variable POINT e12= int_literal 'to' e13= int_literal RIGHTBRACE )
            // C:\\Users\\Jegan\\Documents\\MSCE\\FALL 09\\SoftwareStudio\\SPINACH-Srinivasan\\ConsoleApplication1\\ConsoleApplication1\\spinach.g:168:3: LEFTBRACE e11= variable POINT e12= int_literal 'to' e13= int_literal RIGHTBRACE
            {
                root_0 = (object)adaptor.GetNilNode();

                LEFTBRACE79=(IToken)Match(input,LEFTBRACE,FOLLOW_LEFTBRACE_in_range901);
                    LEFTBRACE79_tree = (object)adaptor.Create(LEFTBRACE79);
                    adaptor.AddChild(root_0, LEFTBRACE79_tree);

                PushFollow(FOLLOW_variable_in_range907);
                e11 = variable();
                state.followingStackPointer--;

                adaptor.AddChild(root_0, e11.Tree);
                retval.ret.RANGEVARIABLE = ((e11 != null) ? e11.ret : null);
                POINT80=(IToken)Match(input,POINT,FOLLOW_POINT_in_range910);
                    POINT80_tree = (object)adaptor.Create(POINT80);
                    adaptor.AddChild(root_0, POINT80_tree);

                PushFollow(FOLLOW_int_literal_in_range916);
                e12 = int_literal();
                state.followingStackPointer--;

                adaptor.AddChild(root_0, e12.Tree);
                retval.ret.STARTINGRANGE = ((e12 != null) ? e12.ret : null);
                string_literal81=(IToken)Match(input,35,FOLLOW_35_in_range919);
                    string_literal81_tree = (object)adaptor.Create(string_literal81);
                    adaptor.AddChild(root_0, string_literal81_tree);

                PushFollow(FOLLOW_int_literal_in_range924);
                e13 = int_literal();
                state.followingStackPointer--;

                adaptor.AddChild(root_0, e13.Tree);
                retval.ret.ENDINGRANGE = ((e13 != null) ? e13.ret : null);
                RIGHTBRACE82=(IToken)Match(input,RIGHTBRACE,FOLLOW_RIGHTBRACE_in_range927);
                    RIGHTBRACE82_tree = (object)adaptor.Create(RIGHTBRACE82);
                    adaptor.AddChild(root_0, RIGHTBRACE82_tree);

            }

            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;
    }