Inheritance: Antlr.Runtime.ParserRuleReturnScope
コード例 #1
0
ファイル: spinachParser.cs プロジェクト: shranjan/SPINACH
    // $ANTLR start "structobjdec"
    // C:\\Documents and Settings\\Administrator\\Desktop\\Spinach\\InterpreterFrontEnd\\spinach.g:212:1: structobjdec returns [StructObjectDeclaration ret] : (el1= variable el2= variable ) END_OF_STATEMENT ;
    public spinachParser.structobjdec_return structobjdec() // throws RecognitionException [1]
    {   
        spinachParser.structobjdec_return retval = new spinachParser.structobjdec_return();
        retval.Start = input.LT(1);

        object root_0 = null;

        IToken END_OF_STATEMENT88 = null;
        spinachParser.variable_return el1 = null;

        spinachParser.variable_return el2 = null;


        object END_OF_STATEMENT88_tree=null;


        retval.ret = new StructObjectDeclaration();

        try 
    	{
            // C:\\Documents and Settings\\Administrator\\Desktop\\Spinach\\InterpreterFrontEnd\\spinach.g:216:1: ( (el1= variable el2= variable ) END_OF_STATEMENT )
            // C:\\Documents and Settings\\Administrator\\Desktop\\Spinach\\InterpreterFrontEnd\\spinach.g:216:3: (el1= variable el2= variable ) END_OF_STATEMENT
            {
            	root_0 = (object)adaptor.GetNilNode();

            	// C:\\Documents and Settings\\Administrator\\Desktop\\Spinach\\InterpreterFrontEnd\\spinach.g:216:3: (el1= variable el2= variable )
            	// C:\\Documents and Settings\\Administrator\\Desktop\\Spinach\\InterpreterFrontEnd\\spinach.g:216:4: el1= variable el2= variable
            	{
            		PushFollow(FOLLOW_variable_in_structobjdec1224);
            		el1 = variable();
            		state.followingStackPointer--;

            		adaptor.AddChild(root_0, el1.Tree);
            		 retval.ret.setStructName(((el1 != null) ? el1.ret : null));
            		PushFollow(FOLLOW_variable_in_structobjdec1231);
            		el2 = variable();
            		state.followingStackPointer--;

            		adaptor.AddChild(root_0, el2.Tree);
            		 retval.ret.setObjName(((el2 != null) ? el2.ret : null));

            	}

            	END_OF_STATEMENT88=(IToken)Match(input,END_OF_STATEMENT,FOLLOW_END_OF_STATEMENT_in_structobjdec1237); 
            		END_OF_STATEMENT88_tree = (object)adaptor.Create(END_OF_STATEMENT88);
            		adaptor.AddChild(root_0, END_OF_STATEMENT88_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 "structobjdec"
    // C:\\Users\\Jegan\\Documents\\MSCE\\FALL 09\\SoftwareStudio\\SPINACH-Srinivasan\\ConsoleApplication1\\ConsoleApplication1\\spinach.g:131:1: structobjdec returns [StructObjectDeclaration ret] : (el1= variable el2= variable ) END_OF_STATEMENT ;
    public spinachParser.structobjdec_return structobjdec()
    {
        spinachParser.structobjdec_return retval = new spinachParser.structobjdec_return();
        retval.Start = input.LT(1);

        object root_0 = null;

        IToken END_OF_STATEMENT67 = null;
        spinachParser.variable_return el1 = null;

        spinachParser.variable_return el2 = null;

        object END_OF_STATEMENT67_tree=null;

        retval.ret = new StructObjectDeclaration();

        try
        {
            // C:\\Users\\Jegan\\Documents\\MSCE\\FALL 09\\SoftwareStudio\\SPINACH-Srinivasan\\ConsoleApplication1\\ConsoleApplication1\\spinach.g:135:1: ( (el1= variable el2= variable ) END_OF_STATEMENT )
            // C:\\Users\\Jegan\\Documents\\MSCE\\FALL 09\\SoftwareStudio\\SPINACH-Srinivasan\\ConsoleApplication1\\ConsoleApplication1\\spinach.g:135:3: (el1= variable el2= variable ) END_OF_STATEMENT
            {
                root_0 = (object)adaptor.GetNilNode();

                // C:\\Users\\Jegan\\Documents\\MSCE\\FALL 09\\SoftwareStudio\\SPINACH-Srinivasan\\ConsoleApplication1\\ConsoleApplication1\\spinach.g:135:3: (el1= variable el2= variable )
                // C:\\Users\\Jegan\\Documents\\MSCE\\FALL 09\\SoftwareStudio\\SPINACH-Srinivasan\\ConsoleApplication1\\ConsoleApplication1\\spinach.g:135:4: el1= variable el2= variable
                {
                    PushFollow(FOLLOW_variable_in_structobjdec736);
                    el1 = variable();
                    state.followingStackPointer--;

                    adaptor.AddChild(root_0, el1.Tree);
                     retval.ret.setStructName(((el1 != null) ? el1.ret : null));
                    PushFollow(FOLLOW_variable_in_structobjdec743);
                    el2 = variable();
                    state.followingStackPointer--;

                    adaptor.AddChild(root_0, el2.Tree);
                     retval.ret.setObjName(((el2 != null) ? el2.ret : null));

                }

                END_OF_STATEMENT67=(IToken)Match(input,END_OF_STATEMENT,FOLLOW_END_OF_STATEMENT_in_structobjdec749);
                    END_OF_STATEMENT67_tree = (object)adaptor.Create(END_OF_STATEMENT67);
                    adaptor.AddChild(root_0, END_OF_STATEMENT67_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;
    }