Inheritance: Antlr.Runtime.ParserRuleReturnScope
Ejemplo n.º 1
0
    // $ANTLR start "ruleContents"
    // D:\\lesscss.g:84:10: fragment ruleContents : ( property -> ^( PROPERTY property ) | ( ( selectors ';' ) -> ^( MIXIN selectors ) ) | ruleset );
    public lesscssParser.ruleContents_return ruleContents() // throws RecognitionException [1]
    {   
        lesscssParser.ruleContents_return retval = new lesscssParser.ruleContents_return();
        retval.Start = input.LT(1);

        CommonTree root_0 = null;

        IToken char_literal43 = null;
        lesscssParser.property_return property41 = null;

        lesscssParser.selectors_return selectors42 = null;

        lesscssParser.ruleset_return ruleset44 = null;


        CommonTree char_literal43_tree=null;
        RewriteRuleTokenStream stream_32 = new RewriteRuleTokenStream(adaptor,"token 32");
        RewriteRuleSubtreeStream stream_selectors = new RewriteRuleSubtreeStream(adaptor,"rule selectors");
        RewriteRuleSubtreeStream stream_property = new RewriteRuleSubtreeStream(adaptor,"rule property");
        try 
    	{
            // D:\\lesscss.g:85:2: ( property -> ^( PROPERTY property ) | ( ( selectors ';' ) -> ^( MIXIN selectors ) ) | ruleset )
            int alt12 = 3;
            alt12 = dfa12.Predict(input);
            switch (alt12) 
            {
                case 1 :
                    // D:\\lesscss.g:85:4: property
                    {
                    	PushFollow(FOLLOW_property_in_ruleContents473);
                    	property41 = property();
                    	state.followingStackPointer--;

                    	stream_property.Add(property41.Tree);


                    	// AST REWRITE
                    	// elements:          property
                    	// token labels:      
                    	// rule labels:       retval
                    	// token list labels: 
                    	// rule list labels:  
                    	// wildcard labels: 
                    	retval.Tree = root_0;
                    	RewriteRuleSubtreeStream stream_retval = new RewriteRuleSubtreeStream(adaptor, "rule retval", retval!=null ? retval.Tree : null);

                    	root_0 = (CommonTree)adaptor.GetNilNode();
                    	// 85:13: -> ^( PROPERTY property )
                    	{
                    	    // D:\\lesscss.g:85:16: ^( PROPERTY property )
                    	    {
                    	    CommonTree root_1 = (CommonTree)adaptor.GetNilNode();
                    	    root_1 = (CommonTree)adaptor.BecomeRoot((CommonTree)adaptor.Create(PROPERTY, "PROPERTY"), root_1);

                    	    adaptor.AddChild(root_1, stream_property.NextTree());

                    	    adaptor.AddChild(root_0, root_1);
                    	    }

                    	}

                    	retval.Tree = root_0;retval.Tree = root_0;
                    }
                    break;
                case 2 :
                    // D:\\lesscss.g:85:39: ( ( selectors ';' ) -> ^( MIXIN selectors ) )
                    {
                    	// D:\\lesscss.g:85:39: ( ( selectors ';' ) -> ^( MIXIN selectors ) )
                    	// D:\\lesscss.g:85:40: ( selectors ';' )
                    	{
                    		// D:\\lesscss.g:85:40: ( selectors ';' )
                    		// D:\\lesscss.g:85:41: selectors ';'
                    		{
                    			PushFollow(FOLLOW_selectors_in_ruleContents487);
                    			selectors42 = selectors();
                    			state.followingStackPointer--;

                    			stream_selectors.Add(selectors42.Tree);
                    			char_literal43=(IToken)Match(input,32,FOLLOW_32_in_ruleContents489);  
                    			stream_32.Add(char_literal43);


                    		}



                    		// AST REWRITE
                    		// elements:          selectors
                    		// token labels:      
                    		// rule labels:       retval
                    		// token list labels: 
                    		// rule list labels:  
                    		// wildcard labels: 
                    		retval.Tree = root_0;
                    		RewriteRuleSubtreeStream stream_retval = new RewriteRuleSubtreeStream(adaptor, "rule retval", retval!=null ? retval.Tree : null);

                    		root_0 = (CommonTree)adaptor.GetNilNode();
                    		// 85:56: -> ^( MIXIN selectors )
                    		{
                    		    // D:\\lesscss.g:85:59: ^( MIXIN selectors )
                    		    {
                    		    CommonTree root_1 = (CommonTree)adaptor.GetNilNode();
                    		    root_1 = (CommonTree)adaptor.BecomeRoot((CommonTree)adaptor.Create(MIXIN, "MIXIN"), root_1);

                    		    adaptor.AddChild(root_1, stream_selectors.NextTree());

                    		    adaptor.AddChild(root_0, root_1);
                    		    }

                    		}

                    		retval.Tree = root_0;retval.Tree = root_0;
                    	}


                    }
                    break;
                case 3 :
                    // D:\\lesscss.g:85:81: ruleset
                    {
                    	root_0 = (CommonTree)adaptor.GetNilNode();

                    	PushFollow(FOLLOW_ruleset_in_ruleContents503);
                    	ruleset44 = ruleset();
                    	state.followingStackPointer--;

                    	adaptor.AddChild(root_0, ruleset44.Tree);

                    }
                    break;

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

            	retval.Tree = (CommonTree)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 = (CommonTree)adaptor.ErrorNode(input, (IToken) retval.Start, input.LT(-1), re);

        }
        finally 
    	{
        }
        return retval;
    }
Ejemplo n.º 2
0
    // $ANTLR start "ruleContents"
    // D:\\development\\Less.Net\\lesscss.g:85:10: fragment ruleContents : ( property | mixin | ruleset );
    public lesscssParser.ruleContents_return ruleContents() // throws RecognitionException [1]
    {   
        lesscssParser.ruleContents_return retval = new lesscssParser.ruleContents_return();
        retval.Start = input.LT(1);

        CommonTree root_0 = null;

        lesscssParser.property_return property41 = default(lesscssParser.property_return);

        lesscssParser.mixin_return mixin42 = default(lesscssParser.mixin_return);

        lesscssParser.ruleset_return ruleset43 = default(lesscssParser.ruleset_return);



        try 
    	{
            // D:\\development\\Less.Net\\lesscss.g:86:2: ( property | mixin | ruleset )
            int alt12 = 3;
            alt12 = dfa12.Predict(input);
            switch (alt12) 
            {
                case 1 :
                    // D:\\development\\Less.Net\\lesscss.g:86:4: property
                    {
                    	root_0 = (CommonTree)adaptor.GetNilNode();

                    	PushFollow(FOLLOW_property_in_ruleContents486);
                    	property41 = property();
                    	state.followingStackPointer--;

                    	adaptor.AddChild(root_0, property41.Tree);

                    }
                    break;
                case 2 :
                    // D:\\development\\Less.Net\\lesscss.g:86:15: mixin
                    {
                    	root_0 = (CommonTree)adaptor.GetNilNode();

                    	PushFollow(FOLLOW_mixin_in_ruleContents490);
                    	mixin42 = mixin();
                    	state.followingStackPointer--;

                    	adaptor.AddChild(root_0, mixin42.Tree);

                    }
                    break;
                case 3 :
                    // D:\\development\\Less.Net\\lesscss.g:86:23: ruleset
                    {
                    	root_0 = (CommonTree)adaptor.GetNilNode();

                    	PushFollow(FOLLOW_ruleset_in_ruleContents494);
                    	ruleset43 = ruleset();
                    	state.followingStackPointer--;

                    	adaptor.AddChild(root_0, ruleset43.Tree);

                    }
                    break;

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

            	retval.Tree = (CommonTree)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 = (CommonTree)adaptor.ErrorNode(input, (IToken) retval.Start, input.LT(-1), re);

        }
        finally 
    	{
        }
        return retval;
    }