Ejemplo n.º 1
0
    // $ANTLR start "whenClause"
    // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:506:1: whenClause : ( WHEN logicalExpression THEN expression ) ;
    public HqlParser.whenClause_return whenClause() // throws RecognitionException [1]
    {   
        HqlParser.whenClause_return retval = new HqlParser.whenClause_return();
        retval.Start = input.LT(1);

        IASTNode root_0 = null;

        IToken WHEN203 = null;
        IToken THEN205 = null;
        HqlParser.logicalExpression_return logicalExpression204 = default(HqlParser.logicalExpression_return);

        HqlParser.expression_return expression206 = default(HqlParser.expression_return);


        IASTNode WHEN203_tree=null;
        IASTNode THEN205_tree=null;

        try 
    	{
            // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:507:2: ( ( WHEN logicalExpression THEN expression ) )
            // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:507:4: ( WHEN logicalExpression THEN expression )
            {
            	root_0 = (IASTNode)adaptor.GetNilNode();

            	// /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:507:4: ( WHEN logicalExpression THEN expression )
            	// /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:507:5: WHEN logicalExpression THEN expression
            	{
            		WHEN203=(IToken)Match(input,WHEN,FOLLOW_WHEN_in_whenClause2564); 
            			WHEN203_tree = (IASTNode)adaptor.Create(WHEN203);
            			root_0 = (IASTNode)adaptor.BecomeRoot(WHEN203_tree, root_0);

            		PushFollow(FOLLOW_logicalExpression_in_whenClause2567);
            		logicalExpression204 = logicalExpression();
            		state.followingStackPointer--;

            		adaptor.AddChild(root_0, logicalExpression204.Tree);
            		THEN205=(IToken)Match(input,THEN,FOLLOW_THEN_in_whenClause2569); 
            		PushFollow(FOLLOW_expression_in_whenClause2572);
            		expression206 = expression();
            		state.followingStackPointer--;

            		adaptor.AddChild(root_0, expression206.Tree);

            	}


            }

            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 "whenClause"
    // Hql.g:524:1: whenClause : ( WHEN logicalExpression THEN expression ) ;
    public HqlParser.whenClause_return whenClause() // throws RecognitionException [1]
    {   
        HqlParser.whenClause_return retval = new HqlParser.whenClause_return();
        retval.Start = input.LT(1);

        IASTNode root_0 = null;

        IToken WHEN216 = null;
        IToken THEN218 = null;
        HqlParser.logicalExpression_return logicalExpression217 = default(HqlParser.logicalExpression_return);

        HqlParser.expression_return expression219 = default(HqlParser.expression_return);


        IASTNode WHEN216_tree=null;
        IASTNode THEN218_tree=null;

        try 
    	{
            // Hql.g:525:2: ( ( WHEN logicalExpression THEN expression ) )
            // Hql.g:525:4: ( WHEN logicalExpression THEN expression )
            {
            	root_0 = (IASTNode)adaptor.GetNilNode();

            	// Hql.g:525:4: ( WHEN logicalExpression THEN expression )
            	// Hql.g:525:5: WHEN logicalExpression THEN expression
            	{
            		WHEN216=(IToken)Match(input,WHEN,FOLLOW_WHEN_in_whenClause2663); 
            			WHEN216_tree = (IASTNode)adaptor.Create(WHEN216);
            			root_0 = (IASTNode)adaptor.BecomeRoot(WHEN216_tree, root_0);

            		PushFollow(FOLLOW_logicalExpression_in_whenClause2666);
            		logicalExpression217 = logicalExpression();
            		state.followingStackPointer--;

            		adaptor.AddChild(root_0, logicalExpression217.Tree);
            		THEN218=(IToken)Match(input,THEN,FOLLOW_THEN_in_whenClause2668); 
            		PushFollow(FOLLOW_expression_in_whenClause2671);
            		expression219 = expression();
            		state.followingStackPointer--;

            		adaptor.AddChild(root_0, expression219.Tree);

            	}


            }

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