// $ANTLR start "ascendingOrDescending" // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:304:1: ascendingOrDescending : ( (a= 'asc' | a= 'ascending' ) -> ^( ASCENDING[$a.Text] ) | (d= 'desc' | d= 'descending' ) -> ^( DESCENDING[$d.Text] ) ); public HqlParser.ascendingOrDescending_return ascendingOrDescending() // throws RecognitionException [1] { HqlParser.ascendingOrDescending_return retval = new HqlParser.ascendingOrDescending_return(); retval.Start = input.LT(1); IASTNode root_0 = null; IToken a = null; IToken d = null; IASTNode a_tree=null; IASTNode d_tree=null; RewriteRuleTokenStream stream_131 = new RewriteRuleTokenStream(adaptor,"token 131"); RewriteRuleTokenStream stream_130 = new RewriteRuleTokenStream(adaptor,"token 130"); RewriteRuleTokenStream stream_ASCENDING = new RewriteRuleTokenStream(adaptor,"token ASCENDING"); RewriteRuleTokenStream stream_DESCENDING = new RewriteRuleTokenStream(adaptor,"token DESCENDING"); try { // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:305:2: ( (a= 'asc' | a= 'ascending' ) -> ^( ASCENDING[$a.Text] ) | (d= 'desc' | d= 'descending' ) -> ^( DESCENDING[$d.Text] ) ) int alt42 = 2; int LA42_0 = input.LA(1); if ( (LA42_0 == ASCENDING || LA42_0 == 130) ) { alt42 = 1; } else if ( (LA42_0 == DESCENDING || LA42_0 == 131) ) { alt42 = 2; } else { NoViableAltException nvae_d42s0 = new NoViableAltException("", 42, 0, input); throw nvae_d42s0; } switch (alt42) { case 1 : // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:305:4: (a= 'asc' | a= 'ascending' ) { // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:305:4: (a= 'asc' | a= 'ascending' ) int alt40 = 2; int LA40_0 = input.LA(1); if ( (LA40_0 == ASCENDING) ) { alt40 = 1; } else if ( (LA40_0 == 130) ) { alt40 = 2; } else { NoViableAltException nvae_d40s0 = new NoViableAltException("", 40, 0, input); throw nvae_d40s0; } switch (alt40) { case 1 : // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:305:6: a= 'asc' { a=(IToken)Match(input,ASCENDING,FOLLOW_ASCENDING_in_ascendingOrDescending1631); stream_ASCENDING.Add(a); } break; case 2 : // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:305:16: a= 'ascending' { a=(IToken)Match(input,130,FOLLOW_130_in_ascendingOrDescending1637); stream_130.Add(a); } break; } // AST REWRITE // elements: // 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 = (IASTNode)adaptor.GetNilNode(); // 306:3: -> ^( ASCENDING[$a.Text] ) { // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:306:6: ^( ASCENDING[$a.Text] ) { IASTNode root_1 = (IASTNode)adaptor.GetNilNode(); root_1 = (IASTNode)adaptor.BecomeRoot((IASTNode)adaptor.Create(ASCENDING, a.Text), root_1); adaptor.AddChild(root_0, root_1); } } retval.Tree = root_0;retval.Tree = root_0; } break; case 2 : // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:307:4: (d= 'desc' | d= 'descending' ) { // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:307:4: (d= 'desc' | d= 'descending' ) int alt41 = 2; int LA41_0 = input.LA(1); if ( (LA41_0 == DESCENDING) ) { alt41 = 1; } else if ( (LA41_0 == 131) ) { alt41 = 2; } else { NoViableAltException nvae_d41s0 = new NoViableAltException("", 41, 0, input); throw nvae_d41s0; } switch (alt41) { case 1 : // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:307:6: d= 'desc' { d=(IToken)Match(input,DESCENDING,FOLLOW_DESCENDING_in_ascendingOrDescending1657); stream_DESCENDING.Add(d); } break; case 2 : // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:307:17: d= 'descending' { d=(IToken)Match(input,131,FOLLOW_131_in_ascendingOrDescending1663); stream_131.Add(d); } break; } // AST REWRITE // elements: // 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 = (IASTNode)adaptor.GetNilNode(); // 308:3: -> ^( DESCENDING[$d.Text] ) { // /Users/Steve/Projects/NHibernate/Branches/2.1.x/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g:308:6: ^( DESCENDING[$d.Text] ) { IASTNode root_1 = (IASTNode)adaptor.GetNilNode(); root_1 = (IASTNode)adaptor.BecomeRoot((IASTNode)adaptor.Create(DESCENDING, d.Text), root_1); adaptor.AddChild(root_0, root_1); } } retval.Tree = root_0;retval.Tree = root_0; } break; } 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 "ascendingOrDescending" // Hql.g:322:1: ascendingOrDescending : ( (a= 'asc' | a= 'ascending' ) -> ^( ASCENDING[$a.Text] ) | (d= 'desc' | d= 'descending' ) -> ^( DESCENDING[$d.Text] ) ); public HqlParser.ascendingOrDescending_return ascendingOrDescending() // throws RecognitionException [1] { HqlParser.ascendingOrDescending_return retval = new HqlParser.ascendingOrDescending_return(); retval.Start = input.LT(1); IASTNode root_0 = null; IToken a = null; IToken d = null; IASTNode a_tree=null; IASTNode d_tree=null; RewriteRuleTokenStream stream_134 = new RewriteRuleTokenStream(adaptor,"token 134"); RewriteRuleTokenStream stream_133 = new RewriteRuleTokenStream(adaptor,"token 133"); RewriteRuleTokenStream stream_DESCENDING = new RewriteRuleTokenStream(adaptor,"token DESCENDING"); RewriteRuleTokenStream stream_ASCENDING = new RewriteRuleTokenStream(adaptor,"token ASCENDING"); try { // Hql.g:323:2: ( (a= 'asc' | a= 'ascending' ) -> ^( ASCENDING[$a.Text] ) | (d= 'desc' | d= 'descending' ) -> ^( DESCENDING[$d.Text] ) ) int alt48 = 2; int LA48_0 = input.LA(1); if ( (LA48_0 == ASCENDING || LA48_0 == 133) ) { alt48 = 1; } else if ( (LA48_0 == DESCENDING || LA48_0 == 134) ) { alt48 = 2; } else { NoViableAltException nvae_d48s0 = new NoViableAltException("", 48, 0, input); throw nvae_d48s0; } switch (alt48) { case 1 : // Hql.g:323:4: (a= 'asc' | a= 'ascending' ) { // Hql.g:323:4: (a= 'asc' | a= 'ascending' ) int alt46 = 2; int LA46_0 = input.LA(1); if ( (LA46_0 == ASCENDING) ) { alt46 = 1; } else if ( (LA46_0 == 133) ) { alt46 = 2; } else { NoViableAltException nvae_d46s0 = new NoViableAltException("", 46, 0, input); throw nvae_d46s0; } switch (alt46) { case 1 : // Hql.g:323:6: a= 'asc' { a=(IToken)Match(input,ASCENDING,FOLLOW_ASCENDING_in_ascendingOrDescending1729); stream_ASCENDING.Add(a); } break; case 2 : // Hql.g:323:16: a= 'ascending' { a=(IToken)Match(input,133,FOLLOW_133_in_ascendingOrDescending1735); stream_133.Add(a); } break; } // AST REWRITE // elements: // 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 = (IASTNode)adaptor.GetNilNode(); // 324:3: -> ^( ASCENDING[$a.Text] ) { // Hql.g:324:6: ^( ASCENDING[$a.Text] ) { IASTNode root_1 = (IASTNode)adaptor.GetNilNode(); root_1 = (IASTNode)adaptor.BecomeRoot((IASTNode)adaptor.Create(ASCENDING, a.Text), root_1); adaptor.AddChild(root_0, root_1); } } retval.Tree = root_0;retval.Tree = root_0; } break; case 2 : // Hql.g:325:4: (d= 'desc' | d= 'descending' ) { // Hql.g:325:4: (d= 'desc' | d= 'descending' ) int alt47 = 2; int LA47_0 = input.LA(1); if ( (LA47_0 == DESCENDING) ) { alt47 = 1; } else if ( (LA47_0 == 134) ) { alt47 = 2; } else { NoViableAltException nvae_d47s0 = new NoViableAltException("", 47, 0, input); throw nvae_d47s0; } switch (alt47) { case 1 : // Hql.g:325:6: d= 'desc' { d=(IToken)Match(input,DESCENDING,FOLLOW_DESCENDING_in_ascendingOrDescending1755); stream_DESCENDING.Add(d); } break; case 2 : // Hql.g:325:17: d= 'descending' { d=(IToken)Match(input,134,FOLLOW_134_in_ascendingOrDescending1761); stream_134.Add(d); } break; } // AST REWRITE // elements: // 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 = (IASTNode)adaptor.GetNilNode(); // 326:3: -> ^( DESCENDING[$d.Text] ) { // Hql.g:326:6: ^( DESCENDING[$d.Text] ) { IASTNode root_1 = (IASTNode)adaptor.GetNilNode(); root_1 = (IASTNode)adaptor.BecomeRoot((IASTNode)adaptor.Create(DESCENDING, d.Text), root_1); adaptor.AddChild(root_0, root_1); } } retval.Tree = root_0;retval.Tree = root_0; } break; } 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; }