ES3Parser.catchClause C# (CSharp) Method

catchClause() public method

public catchClause ( ) : ES3Parser.catchClause_return
return ES3Parser.catchClause_return
    public ES3Parser.catchClause_return catchClause() // throws RecognitionException [1]
    {   
        ES3Parser.catchClause_return retval = new ES3Parser.catchClause_return();
        retval.Start = input.LT(1);

        object root_0 = null;

        IToken id = null;
        IToken CATCH170 = null;
        IToken LPAREN171 = null;
        IToken RPAREN172 = null;
        ES3Parser.block_return block173 = default(ES3Parser.block_return);


        object id_tree=null;
        object CATCH170_tree=null;
        object LPAREN171_tree=null;
        object RPAREN172_tree=null;

        try 
    	{
            // C:\\Users\\s.ros\\Projets\\Jint\\Jint\\ES3.g:1779:2: ( CATCH LPAREN id= Identifier RPAREN block )
            // C:\\Users\\s.ros\\Projets\\Jint\\Jint\\ES3.g:1779:4: CATCH LPAREN id= Identifier RPAREN block
            {
            	root_0 = (object)adaptor.GetNilNode();

            	CATCH170=(IToken)Match(input,CATCH,FOLLOW_CATCH_in_catchClause6505); 
            		CATCH170_tree = (object)adaptor.Create(CATCH170);
            		root_0 = (object)adaptor.BecomeRoot(CATCH170_tree, root_0);

            	LPAREN171=(IToken)Match(input,LPAREN,FOLLOW_LPAREN_in_catchClause6508); 
            	id=(IToken)Match(input,Identifier,FOLLOW_Identifier_in_catchClause6513); 
            		id_tree = (object)adaptor.Create(id);
            		adaptor.AddChild(root_0, id_tree);

            	RPAREN172=(IToken)Match(input,RPAREN,FOLLOW_RPAREN_in_catchClause6515); 
            	PushFollow(FOLLOW_block_in_catchClause6518);
            	block173 = block();
            	state.followingStackPointer--;

            	adaptor.AddChild(root_0, block173.Tree);
            	 retval.value =  new CatchClause(((id != null) ? id.Text : null), ((block173 != null) ? block173.value : default(BlockStatement))); 

            }

            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 end "catchClause"
ES3Parser