Esempio n. 1
0
    // $ANTLR start "interfaceDeclaration"
    // AS3_ex.g3:1617:1: interfaceDeclaration : i= INTERFACE type (e= EXTENDS typeList )? interfaceBody ;
    public AS3_exParser.interfaceDeclaration_return interfaceDeclaration() // throws RecognitionException [1]
    {   
        AS3_exParser.interfaceDeclaration_return retval = new AS3_exParser.interfaceDeclaration_return();
        retval.Start = input.LT(1);
        int interfaceDeclaration_StartIndex = input.Index();
        object root_0 = null;

        IToken i = null;
        IToken e = null;
        AS3_exParser.type_return type85 = null;

        AS3_exParser.typeList_return typeList86 = null;

        AS3_exParser.interfaceBody_return interfaceBody87 = null;


        object i_tree=null;
        object e_tree=null;

        try 
    	{
    	    if ( (state.backtracking > 0) && AlreadyParsedRule(input, 43) ) 
    	    {
    	    	return retval; 
    	    }
            // AS3_ex.g3:1618:2: (i= INTERFACE type (e= EXTENDS typeList )? interfaceBody )
            // AS3_ex.g3:1618:6: i= INTERFACE type (e= EXTENDS typeList )? interfaceBody
            {
            	root_0 = (object)adaptor.GetNilNode();

            	i=(IToken)Match(input,INTERFACE,FOLLOW_INTERFACE_in_interfaceDeclaration6594); if (state.failed) return retval;
            	if ( state.backtracking == 0 )
            	{i_tree = (object)adaptor.Create(i);
            		adaptor.AddChild(root_0, i_tree);
            	}
            	if ( state.backtracking == 0 ) 
            	{
            	  Emit((CommonToken)i);
            	}
            	PushFollow(FOLLOW_type_in_interfaceDeclaration6598);
            	type85 = type();
            	state.followingStackPointer--;
            	if (state.failed) return retval;
            	if ( state.backtracking == 0 ) adaptor.AddChild(root_0, type85.Tree);
            	// AS3_ex.g3:1618:48: (e= EXTENDS typeList )?
            	int alt49 = 2;
            	int LA49_0 = input.LA(1);

            	if ( (LA49_0 == EXTENDS) )
            	{
            	    alt49 = 1;
            	}
            	switch (alt49) 
            	{
            	    case 1 :
            	        // AS3_ex.g3:1618:49: e= EXTENDS typeList
            	        {
            	        	e=(IToken)Match(input,EXTENDS,FOLLOW_EXTENDS_in_interfaceDeclaration6603); if (state.failed) return retval;
            	        	if ( state.backtracking == 0 )
            	        	{e_tree = (object)adaptor.Create(e);
            	        		adaptor.AddChild(root_0, e_tree);
            	        	}
            	        	if ( state.backtracking == 0 ) 
            	        	{
            	        	  Emit((CommonToken)e);
            	        	}
            	        	PushFollow(FOLLOW_typeList_in_interfaceDeclaration6607);
            	        	typeList86 = typeList();
            	        	state.followingStackPointer--;
            	        	if (state.failed) return retval;
            	        	if ( state.backtracking == 0 ) adaptor.AddChild(root_0, typeList86.Tree);

            	        }
            	        break;

            	}

            	if ( state.backtracking == 0 ) 
            	{
            	  PopIndent();
            	}
            	PushFollow(FOLLOW_interfaceBody_in_interfaceDeclaration6621);
            	interfaceBody87 = interfaceBody();
            	state.followingStackPointer--;
            	if (state.failed) return retval;
            	if ( state.backtracking == 0 ) adaptor.AddChild(root_0, interfaceBody87.Tree);

            }

            retval.Stop = input.LT(-1);

            if ( state.backtracking==0 )
            {	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 
    	{
            if ( state.backtracking > 0 ) 
            {
            	Memoize(input, 43, interfaceDeclaration_StartIndex); 
            }
        }
        return retval;
    }
Esempio n. 2
0
    // $ANTLR start "interfaceDeclaration"
    // AS3_ex.g3:2002:1: interfaceDeclaration : i= INTERFACE type (e= EXTENDS typeList )? interfaceBody ;
    public AS3_exParser.interfaceDeclaration_return interfaceDeclaration() // throws RecognitionException [1]
    {   
        AS3_exParser.interfaceDeclaration_return retval = new AS3_exParser.interfaceDeclaration_return();
        retval.Start = input.LT(1);
        int interfaceDeclaration_StartIndex = input.Index();
        object root_0 = null;

        IToken i = null;
        IToken e = null;
        AS3_exParser.type_return type92 = null;

        AS3_exParser.typeList_return typeList93 = null;

        AS3_exParser.interfaceBody_return interfaceBody94 = null;


        object i_tree=null;
        object e_tree=null;


            WrapOptions options=mPrinter.getExpressionWrapOptions();
            bool pushedWrapInfo=false;

        try 
        {
            if ( (state.backtracking > 0) && AlreadyParsedRule(input, 43) ) 
            {
                return retval; 
            }
            // AS3_ex.g3:2007:2: (i= INTERFACE type (e= EXTENDS typeList )? interfaceBody )
            // AS3_ex.g3:2008:6: i= INTERFACE type (e= EXTENDS typeList )? interfaceBody
            {
                root_0 = (object)adaptor.GetNilNode();

                i=(IToken)Match(input,INTERFACE,FOLLOW_INTERFACE_in_interfaceDeclaration6790); if (state.failed) return retval;
                if ( state.backtracking == 0 )
                {i_tree = (object)adaptor.Create(i);
                    adaptor.AddChild(root_0, i_tree);
                }
                if ( state.backtracking == 0 ) 
                {
                  emit(i);
                }
                PushFollow(FOLLOW_type_in_interfaceDeclaration6794);
                type92 = type();
                state.followingStackPointer--;
                if (state.failed) return retval;
                if ( state.backtracking == 0 ) adaptor.AddChild(root_0, type92.Tree);
                // AS3_ex.g3:2009:3: (e= EXTENDS typeList )?
                int alt53 = 2;
                int LA53_0 = input.LA(1);

                if ( (LA53_0 == EXTENDS) )
                {
                    alt53 = 1;
                }
                switch (alt53) 
                {
                    case 1 :
                        // AS3_ex.g3:2009:4: e= EXTENDS typeList
                        {
                            e=(IToken)Match(input,EXTENDS,FOLLOW_EXTENDS_in_interfaceDeclaration6802); if (state.failed) return retval;
                            if ( state.backtracking == 0 )
                            {e_tree = (object)adaptor.Create(e);
                                adaptor.AddChild(root_0, e_tree);
                            }
                            if ( state.backtracking == 0 ) 
                            {
                              pushedWrapInfo=pushWrapInfo(options, true);
                            }
                            if ( state.backtracking == 0 ) 
                            {
                              wrapEmit(e, ASPrettyPrinter.Break_Keyword_code);
                            }
                            PushFollow(FOLLOW_typeList_in_interfaceDeclaration6816);
                            typeList93 = typeList();
                            state.followingStackPointer--;
                            if (state.failed) return retval;
                            if ( state.backtracking == 0 ) adaptor.AddChild(root_0, typeList93.Tree);
                            if ( state.backtracking == 0 ) 
                            {
                              if (pushedWrapInfo) mPrinter.popWrapContext();
                            }
                            if ( state.backtracking == 0 ) 
                            {
                              popIndent();
                            }

                        }
                        break;

                }

                if ( state.backtracking == 0 ) 
                {
                  popIndent();
                }
                PushFollow(FOLLOW_interfaceBody_in_interfaceDeclaration6843);
                interfaceBody94 = interfaceBody();
                state.followingStackPointer--;
                if (state.failed) return retval;
                if ( state.backtracking == 0 ) adaptor.AddChild(root_0, interfaceBody94.Tree);

            }

            retval.Stop = input.LT(-1);

            if ( state.backtracking==0 )
            {   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 
        {
            if ( state.backtracking > 0 ) 
            {
                Memoize(input, 43, interfaceDeclaration_StartIndex); 
            }
        }
        return retval;
    }