Inheritance: Antlr.Runtime.ParserRuleReturnScope
示例#1
0
    // $ANTLR start "newExpression"
    // I:\\Developpement\\Evaluant - R&D\\Jint\\trunk\\Jint\\ES3.g:1039:1: newExpression returns [NewExpression value] : NEW first= Identifier ;
    public ES3Parser.newExpression_return newExpression() // throws RecognitionException [1]
    {   
        ES3Parser.newExpression_return retval = new ES3Parser.newExpression_return();
        retval.Start = input.LT(1);

        object root_0 = null;

        IToken first = null;
        IToken NEW21 = null;

        object first_tree=null;
        object NEW21_tree=null;

        try 
    	{
            // I:\\Developpement\\Evaluant - R&D\\Jint\\trunk\\Jint\\ES3.g:1040:2: ( NEW first= Identifier )
            // I:\\Developpement\\Evaluant - R&D\\Jint\\trunk\\Jint\\ES3.g:1040:4: NEW first= Identifier
            {
            	root_0 = (object)adaptor.GetNilNode();

            	NEW21=(IToken)Match(input,NEW,FOLLOW_NEW_in_newExpression3553); 
            		NEW21_tree = (object)adaptor.Create(NEW21);
            		root_0 = (object)adaptor.BecomeRoot(NEW21_tree, root_0);

            	first=(IToken)Match(input,Identifier,FOLLOW_Identifier_in_newExpression3558); 
            		first_tree = (object)adaptor.Create(first);
            		adaptor.AddChild(root_0, first_tree);

            	 retval.value =  new NewExpression(); retval.value.Identifiers.Add(new Identifier(first.Text)); 

            }

            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
    // $ANTLR start "newExpression"
    // C:\\Users\\s.ros\\Projets\\Jint\\Jint\\ES3.g:1039:1: newExpression returns [NewExpression value] : NEW first= memberExpression ;
    public ES3Parser.newExpression_return newExpression() // throws RecognitionException [1]
    {   
        ES3Parser.newExpression_return retval = new ES3Parser.newExpression_return();
        retval.Start = input.LT(1);

        object root_0 = null;

        IToken NEW21 = null;
        ES3Parser.memberExpression_return first = default(ES3Parser.memberExpression_return);


        object NEW21_tree=null;

        try 
    	{
            // C:\\Users\\s.ros\\Projets\\Jint\\Jint\\ES3.g:1040:2: ( NEW first= memberExpression )
            // C:\\Users\\s.ros\\Projets\\Jint\\Jint\\ES3.g:1040:4: NEW first= memberExpression
            {
            	root_0 = (object)adaptor.GetNilNode();

            	NEW21=(IToken)Match(input,NEW,FOLLOW_NEW_in_newExpression3553); 
            		NEW21_tree = (object)adaptor.Create(NEW21);
            		root_0 = (object)adaptor.BecomeRoot(NEW21_tree, root_0);

            	PushFollow(FOLLOW_memberExpression_in_newExpression3558);
            	first = memberExpression();
            	state.followingStackPointer--;

            	adaptor.AddChild(root_0, first.Tree);
            	 retval.value =  new NewExpression(first.value); 

            }

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