Пример #1
0
    // $ANTLR start "bitwiseOrExpression"
    // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:468:1: bitwiseOrExpression : bitwiseXOrExpression ( BOR bitwiseXOrExpression )* ;
    public HqlParser.bitwiseOrExpression_return bitwiseOrExpression() // throws RecognitionException [1]
    {   
        HqlParser.bitwiseOrExpression_return retval = new HqlParser.bitwiseOrExpression_return();
        retval.Start = input.LT(1);

        IASTNode root_0 = null;

        IToken BOR178 = null;
        HqlParser.bitwiseXOrExpression_return bitwiseXOrExpression177 = default(HqlParser.bitwiseXOrExpression_return);

        HqlParser.bitwiseXOrExpression_return bitwiseXOrExpression179 = default(HqlParser.bitwiseXOrExpression_return);


        IASTNode BOR178_tree=null;

        try 
    	{
            // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:469:2: ( bitwiseXOrExpression ( BOR bitwiseXOrExpression )* )
            // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:469:4: bitwiseXOrExpression ( BOR bitwiseXOrExpression )*
            {
            	root_0 = (IASTNode)adaptor.GetNilNode();

            	PushFollow(FOLLOW_bitwiseXOrExpression_in_bitwiseOrExpression2275);
            	bitwiseXOrExpression177 = bitwiseXOrExpression();
            	state.followingStackPointer--;

            	adaptor.AddChild(root_0, bitwiseXOrExpression177.Tree);
            	// /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:469:25: ( BOR bitwiseXOrExpression )*
            	do 
            	{
            	    int alt61 = 2;
            	    int LA61_0 = input.LA(1);

            	    if ( (LA61_0 == BOR) )
            	    {
            	        alt61 = 1;
            	    }


            	    switch (alt61) 
            		{
            			case 1 :
            			    // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:469:26: BOR bitwiseXOrExpression
            			    {
            			    	BOR178=(IToken)Match(input,BOR,FOLLOW_BOR_in_bitwiseOrExpression2278); 
            			    		BOR178_tree = (IASTNode)adaptor.Create(BOR178);
            			    		root_0 = (IASTNode)adaptor.BecomeRoot(BOR178_tree, root_0);

            			    	PushFollow(FOLLOW_bitwiseXOrExpression_in_bitwiseOrExpression2281);
            			    	bitwiseXOrExpression179 = bitwiseXOrExpression();
            			    	state.followingStackPointer--;

            			    	adaptor.AddChild(root_0, bitwiseXOrExpression179.Tree);

            			    }
            			    break;

            			default:
            			    goto loop61;
            	    }
            	} while (true);

            	loop61:
            		;	// Stops C# compiler whining that label 'loop61' has no statements


            }

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

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

        }
        finally 
    	{
        }
        return retval;
    }
    // $ANTLR start "bitwiseOrExpression"
    // Hql.g:486:1: bitwiseOrExpression : bitwiseXOrExpression ( BOR bitwiseXOrExpression )* ;
    public HqlParser.bitwiseOrExpression_return bitwiseOrExpression() // throws RecognitionException [1]
    {   
        HqlParser.bitwiseOrExpression_return retval = new HqlParser.bitwiseOrExpression_return();
        retval.Start = input.LT(1);

        IASTNode root_0 = null;

        IToken BOR191 = null;
        HqlParser.bitwiseXOrExpression_return bitwiseXOrExpression190 = default(HqlParser.bitwiseXOrExpression_return);

        HqlParser.bitwiseXOrExpression_return bitwiseXOrExpression192 = default(HqlParser.bitwiseXOrExpression_return);


        IASTNode BOR191_tree=null;

        try 
    	{
            // Hql.g:487:2: ( bitwiseXOrExpression ( BOR bitwiseXOrExpression )* )
            // Hql.g:487:4: bitwiseXOrExpression ( BOR bitwiseXOrExpression )*
            {
            	root_0 = (IASTNode)adaptor.GetNilNode();

            	PushFollow(FOLLOW_bitwiseXOrExpression_in_bitwiseOrExpression2373);
            	bitwiseXOrExpression190 = bitwiseXOrExpression();
            	state.followingStackPointer--;

            	adaptor.AddChild(root_0, bitwiseXOrExpression190.Tree);
            	// Hql.g:487:25: ( BOR bitwiseXOrExpression )*
            	do 
            	{
            	    int alt67 = 2;
            	    int LA67_0 = input.LA(1);

            	    if ( (LA67_0 == BOR) )
            	    {
            	        alt67 = 1;
            	    }


            	    switch (alt67) 
            		{
            			case 1 :
            			    // Hql.g:487:26: BOR bitwiseXOrExpression
            			    {
            			    	BOR191=(IToken)Match(input,BOR,FOLLOW_BOR_in_bitwiseOrExpression2376); 
            			    		BOR191_tree = (IASTNode)adaptor.Create(BOR191);
            			    		root_0 = (IASTNode)adaptor.BecomeRoot(BOR191_tree, root_0);

            			    	PushFollow(FOLLOW_bitwiseXOrExpression_in_bitwiseOrExpression2379);
            			    	bitwiseXOrExpression192 = bitwiseXOrExpression();
            			    	state.followingStackPointer--;

            			    	adaptor.AddChild(root_0, bitwiseXOrExpression192.Tree);

            			    }
            			    break;

            			default:
            			    goto loop67;
            	    }
            	} while (true);

            	loop67:
            		;	// Stops C# compiler whining that label 'loop67' has no statements


            }

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

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

        }
        finally 
    	{
        }
        return retval;
    }