All Downloads are FREE. Search and download functionalities are using the official Maven repository.

rapture.generated.IndexQueryParser Maven / Gradle / Ivy

There is a newer version: 3.0.4
Show newest version
// $ANTLR 3.5.2 /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g 2016-04-15 08:33:46

    package rapture.generated;
    import rapture.dsl.iqry.*;


import org.antlr.runtime.*;
import java.util.Stack;
import java.util.List;
import java.util.ArrayList;

import org.antlr.runtime.tree.*;


@SuppressWarnings("all")
public class IndexQueryParser extends Parser {
	public static final String[] tokenNames = new String[] {
		"", "", "", "", "AND", "ASC", "BY", "CBRAC", "COMMA", 
		"DESC", "DISTINCT", "EQUAL", "GT", "ID", "LIMIT", "LT", "NOTEQUAL", "NUMBER", 
		"OBRAC", "OR", "ORDER", "SELECT", "STRING", "WHERE", "WS"
	};
	public static final int EOF=-1;
	public static final int AND=4;
	public static final int ASC=5;
	public static final int BY=6;
	public static final int CBRAC=7;
	public static final int COMMA=8;
	public static final int DESC=9;
	public static final int DISTINCT=10;
	public static final int EQUAL=11;
	public static final int GT=12;
	public static final int ID=13;
	public static final int LIMIT=14;
	public static final int LT=15;
	public static final int NOTEQUAL=16;
	public static final int NUMBER=17;
	public static final int OBRAC=18;
	public static final int OR=19;
	public static final int ORDER=20;
	public static final int SELECT=21;
	public static final int STRING=22;
	public static final int WHERE=23;
	public static final int WS=24;

	// delegates
	public Parser[] getDelegates() {
		return new Parser[] {};
	}

	// delegators


	public IndexQueryParser(TokenStream input) {
		this(input, new RecognizerSharedState());
	}
	public IndexQueryParser(TokenStream input, RecognizerSharedState state) {
		super(input, state);
	}

	protected TreeAdaptor adaptor = new CommonTreeAdaptor();

	public void setTreeAdaptor(TreeAdaptor adaptor) {
		this.adaptor = adaptor;
	}
	public TreeAdaptor getTreeAdaptor() {
		return adaptor;
	}
	@Override public String[] getTokenNames() { return IndexQueryParser.tokenNames; }
	@Override public String getGrammarFileName() { return "/Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g"; }


	public static class qry_return extends ParserRuleReturnScope {
		public IndexQuery qry;
		Object tree;
		@Override
		public Object getTree() { return tree; }
	};


	// $ANTLR start "qry"
	// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:21:1: qry returns [IndexQuery qry] : SELECT ( DISTINCT )? x= fieldSet ( WHERE w= whereClause )? ( ORDER BY o= fieldSet ( ASC | DESC )? )? ( LIMIT NUMBER )? ;
	public final IndexQueryParser.qry_return qry() throws RecognitionException {
		IndexQueryParser.qry_return retval = new IndexQueryParser.qry_return();
		retval.start = input.LT(1);

		Object root_0 = null;

		Token SELECT1=null;
		Token DISTINCT2=null;
		Token WHERE3=null;
		Token ORDER4=null;
		Token BY5=null;
		Token ASC6=null;
		Token DESC7=null;
		Token LIMIT8=null;
		Token NUMBER9=null;
		ParserRuleReturnScope x =null;
		ParserRuleReturnScope w =null;
		ParserRuleReturnScope o =null;

		Object SELECT1_tree=null;
		Object DISTINCT2_tree=null;
		Object WHERE3_tree=null;
		Object ORDER4_tree=null;
		Object BY5_tree=null;
		Object ASC6_tree=null;
		Object DESC7_tree=null;
		Object LIMIT8_tree=null;
		Object NUMBER9_tree=null;


		  retval.qry = new IndexQuery();

		try {
			// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:25:3: ( SELECT ( DISTINCT )? x= fieldSet ( WHERE w= whereClause )? ( ORDER BY o= fieldSet ( ASC | DESC )? )? ( LIMIT NUMBER )? )
			// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:25:3: SELECT ( DISTINCT )? x= fieldSet ( WHERE w= whereClause )? ( ORDER BY o= fieldSet ( ASC | DESC )? )? ( LIMIT NUMBER )?
			{
			root_0 = (Object)adaptor.nil();


			SELECT1=(Token)match(input,SELECT,FOLLOW_SELECT_in_qry84); 
			SELECT1_tree = (Object)adaptor.create(SELECT1);
			adaptor.addChild(root_0, SELECT1_tree);

			// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:25:10: ( DISTINCT )?
			int alt1=2;
			int LA1_0 = input.LA(1);
			if ( (LA1_0==DISTINCT) ) {
				alt1=1;
			}
			switch (alt1) {
				case 1 :
					// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:25:11: DISTINCT
					{
					DISTINCT2=(Token)match(input,DISTINCT,FOLLOW_DISTINCT_in_qry87); 
					DISTINCT2_tree = (Object)adaptor.create(DISTINCT2);
					adaptor.addChild(root_0, DISTINCT2_tree);

					 retval.qry.setDistinct(true); 
					}
					break;

			}

			pushFollow(FOLLOW_fieldSet_in_qry96);
			x=fieldSet();
			state._fsp--;

			adaptor.addChild(root_0, x.getTree());

			 retval.qry.setSelect((x!=null?((IndexQueryParser.fieldSet_return)x).select:null)); 
			// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:25:93: ( WHERE w= whereClause )?
			int alt2=2;
			int LA2_0 = input.LA(1);
			if ( (LA2_0==WHERE) ) {
				alt2=1;
			}
			switch (alt2) {
				case 1 :
					// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:25:94: WHERE w= whereClause
					{
					WHERE3=(Token)match(input,WHERE,FOLLOW_WHERE_in_qry101); 
					WHERE3_tree = (Object)adaptor.create(WHERE3);
					adaptor.addChild(root_0, WHERE3_tree);

					pushFollow(FOLLOW_whereClause_in_qry105);
					w=whereClause();
					state._fsp--;

					adaptor.addChild(root_0, w.getTree());

					 retval.qry.setWhere((w!=null?((IndexQueryParser.whereClause_return)w).where:null)); 
					}
					break;

			}

			// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:26:3: ( ORDER BY o= fieldSet ( ASC | DESC )? )?
			int alt4=2;
			int LA4_0 = input.LA(1);
			if ( (LA4_0==ORDER) ) {
				alt4=1;
			}
			switch (alt4) {
				case 1 :
					// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:26:4: ORDER BY o= fieldSet ( ASC | DESC )?
					{
					ORDER4=(Token)match(input,ORDER,FOLLOW_ORDER_in_qry114); 
					ORDER4_tree = (Object)adaptor.create(ORDER4);
					adaptor.addChild(root_0, ORDER4_tree);

					BY5=(Token)match(input,BY,FOLLOW_BY_in_qry116); 
					BY5_tree = (Object)adaptor.create(BY5);
					adaptor.addChild(root_0, BY5_tree);

					pushFollow(FOLLOW_fieldSet_in_qry120);
					o=fieldSet();
					state._fsp--;

					adaptor.addChild(root_0, o.getTree());

					 retval.qry.setOrderBy((o!=null?((IndexQueryParser.fieldSet_return)o).select:null)); 
					// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:26:56: ( ASC | DESC )?
					int alt3=3;
					int LA3_0 = input.LA(1);
					if ( (LA3_0==ASC) ) {
						alt3=1;
					}
					else if ( (LA3_0==DESC) ) {
						alt3=2;
					}
					switch (alt3) {
						case 1 :
							// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:26:57: ASC
							{
							ASC6=(Token)match(input,ASC,FOLLOW_ASC_in_qry125); 
							ASC6_tree = (Object)adaptor.create(ASC6);
							adaptor.addChild(root_0, ASC6_tree);

							 retval.qry.setOrderDirection(OrderDirection.ASC); 
							}
							break;
						case 2 :
							// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:26:111: DESC
							{
							DESC7=(Token)match(input,DESC,FOLLOW_DESC_in_qry131); 
							DESC7_tree = (Object)adaptor.create(DESC7);
							adaptor.addChild(root_0, DESC7_tree);

							 retval.qry.setOrderDirection(OrderDirection.DESC); 
							}
							break;

					}

					}
					break;

			}

			// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:27:3: ( LIMIT NUMBER )?
			int alt5=2;
			int LA5_0 = input.LA(1);
			if ( (LA5_0==LIMIT) ) {
				alt5=1;
			}
			switch (alt5) {
				case 1 :
					// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:27:4: LIMIT NUMBER
					{
					LIMIT8=(Token)match(input,LIMIT,FOLLOW_LIMIT_in_qry143); 
					LIMIT8_tree = (Object)adaptor.create(LIMIT8);
					adaptor.addChild(root_0, LIMIT8_tree);

					NUMBER9=(Token)match(input,NUMBER,FOLLOW_NUMBER_in_qry145); 
					NUMBER9_tree = (Object)adaptor.create(NUMBER9);
					adaptor.addChild(root_0, NUMBER9_tree);

					 retval.qry.setLimit(Integer.parseInt((NUMBER9!=null?NUMBER9.getText():null))); 
					}
					break;

			}

			}

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

			retval.tree = (Object)adaptor.rulePostProcessing(root_0);
			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);

		}
		catch (RecognitionException re) {
			reportError(re);
			recover(input,re);
			retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re);
		}
		finally {
			// do for sure before leaving
		}
		return retval;
	}
	// $ANTLR end "qry"


	public static class fieldSet_return extends ParserRuleReturnScope {
		public SelectList select;
		Object tree;
		@Override
		public Object getTree() { return tree; }
	};


	// $ANTLR start "fieldSet"
	// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:29:1: fieldSet returns [SelectList select] : x= ID ( COMMA y= ID )* ;
	public final IndexQueryParser.fieldSet_return fieldSet() throws RecognitionException {
		IndexQueryParser.fieldSet_return retval = new IndexQueryParser.fieldSet_return();
		retval.start = input.LT(1);

		Object root_0 = null;

		Token x=null;
		Token y=null;
		Token COMMA10=null;

		Object x_tree=null;
		Object y_tree=null;
		Object COMMA10_tree=null;


		  retval.select = new SelectList();

		try {
			// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:32:3: (x= ID ( COMMA y= ID )* )
			// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:32:5: x= ID ( COMMA y= ID )*
			{
			root_0 = (Object)adaptor.nil();


			x=(Token)match(input,ID,FOLLOW_ID_in_fieldSet168); 
			x_tree = (Object)adaptor.create(x);
			adaptor.addChild(root_0, x_tree);

			 retval.select.add((x!=null?x.getText():null)); 
			// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:32:36: ( COMMA y= ID )*
			loop6:
			while (true) {
				int alt6=2;
				int LA6_0 = input.LA(1);
				if ( (LA6_0==COMMA) ) {
					alt6=1;
				}

				switch (alt6) {
				case 1 :
					// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:32:37: COMMA y= ID
					{
					COMMA10=(Token)match(input,COMMA,FOLLOW_COMMA_in_fieldSet173); 
					COMMA10_tree = (Object)adaptor.create(COMMA10);
					adaptor.addChild(root_0, COMMA10_tree);

					y=(Token)match(input,ID,FOLLOW_ID_in_fieldSet177); 
					y_tree = (Object)adaptor.create(y);
					adaptor.addChild(root_0, y_tree);

					 retval.select.add((y!=null?y.getText():null)); 
					}
					break;

				default :
					break loop6;
				}
			}

			}

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

			retval.tree = (Object)adaptor.rulePostProcessing(root_0);
			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);

		}
		catch (RecognitionException re) {
			reportError(re);
			recover(input,re);
			retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re);
		}
		finally {
			// do for sure before leaving
		}
		return retval;
	}
	// $ANTLR end "fieldSet"


	public static class whereClause_return extends ParserRuleReturnScope {
		public WhereClause where;
		Object tree;
		@Override
		public Object getTree() { return tree; }
	};


	// $ANTLR start "whereClause"
	// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:35:1: whereClause returns [WhereClause where] : w= whereStatement (z= ( AND | OR ) y= whereStatement )* ;
	public final IndexQueryParser.whereClause_return whereClause() throws RecognitionException {
		IndexQueryParser.whereClause_return retval = new IndexQueryParser.whereClause_return();
		retval.start = input.LT(1);

		Object root_0 = null;

		Token z=null;
		ParserRuleReturnScope w =null;
		ParserRuleReturnScope y =null;

		Object z_tree=null;


		  retval.where = new WhereClause();

		try {
			// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:38:3: (w= whereStatement (z= ( AND | OR ) y= whereStatement )* )
			// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:38:5: w= whereStatement (z= ( AND | OR ) y= whereStatement )*
			{
			root_0 = (Object)adaptor.nil();


			pushFollow(FOLLOW_whereStatement_in_whereClause202);
			w=whereStatement();
			state._fsp--;

			adaptor.addChild(root_0, w.getTree());

			 retval.where.addStatement((w!=null?((IndexQueryParser.whereStatement_return)w).stmt:null)); 
			// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:38:56: (z= ( AND | OR ) y= whereStatement )*
			loop7:
			while (true) {
				int alt7=2;
				int LA7_0 = input.LA(1);
				if ( (LA7_0==AND||LA7_0==OR) ) {
					alt7=1;
				}

				switch (alt7) {
				case 1 :
					// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:38:57: z= ( AND | OR ) y= whereStatement
					{
					z=input.LT(1);
					if ( input.LA(1)==AND||input.LA(1)==OR ) {
						input.consume();
						adaptor.addChild(root_0, (Object)adaptor.create(z));
						state.errorRecovery=false;
					}
					else {
						MismatchedSetException mse = new MismatchedSetException(null,input);
						throw mse;
					}
					pushFollow(FOLLOW_whereStatement_in_whereClause219);
					y=whereStatement();
					state._fsp--;

					adaptor.addChild(root_0, y.getTree());

					 retval.where.appendStatement((z!=null?z.getText():null), (y!=null?((IndexQueryParser.whereStatement_return)y).stmt:null)); 
					}
					break;

				default :
					break loop7;
				}
			}

			}

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

			retval.tree = (Object)adaptor.rulePostProcessing(root_0);
			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);

		}
		catch (RecognitionException re) {
			reportError(re);
			recover(input,re);
			retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re);
		}
		finally {
			// do for sure before leaving
		}
		return retval;
	}
	// $ANTLR end "whereClause"


	public static class value_return extends ParserRuleReturnScope {
		public WhereValue val;
		Object tree;
		@Override
		public Object getTree() { return tree; }
	};


	// $ANTLR start "value"
	// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:40:1: value returns [WhereValue val] : (x= STRING |y= NUMBER );
	public final IndexQueryParser.value_return value() throws RecognitionException {
		IndexQueryParser.value_return retval = new IndexQueryParser.value_return();
		retval.start = input.LT(1);

		Object root_0 = null;

		Token x=null;
		Token y=null;

		Object x_tree=null;
		Object y_tree=null;

		try {
			// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:40:34: (x= STRING |y= NUMBER )
			int alt8=2;
			int LA8_0 = input.LA(1);
			if ( (LA8_0==STRING) ) {
				alt8=1;
			}
			else if ( (LA8_0==NUMBER) ) {
				alt8=2;
			}

			else {
				NoViableAltException nvae =
					new NoViableAltException("", 8, 0, input);
				throw nvae;
			}

			switch (alt8) {
				case 1 :
					// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:40:36: x= STRING
					{
					root_0 = (Object)adaptor.nil();


					x=(Token)match(input,STRING,FOLLOW_STRING_in_value240); 
					x_tree = (Object)adaptor.create(x);
					adaptor.addChild(root_0, x_tree);

					 retval.val = new StringWhereValue((x!=null?x.getText():null));
					}
					break;
				case 2 :
					// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:40:89: y= NUMBER
					{
					root_0 = (Object)adaptor.nil();


					y=(Token)match(input,NUMBER,FOLLOW_NUMBER_in_value249); 
					y_tree = (Object)adaptor.create(y);
					adaptor.addChild(root_0, y_tree);

					 retval.val = new NumberWhereValue((y!=null?y.getText():null)); 
					}
					break;

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

			retval.tree = (Object)adaptor.rulePostProcessing(root_0);
			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);

		}
		catch (RecognitionException re) {
			reportError(re);
			recover(input,re);
			retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re);
		}
		finally {
			// do for sure before leaving
		}
		return retval;
	}
	// $ANTLR end "value"


	public static class whereStatement_return extends ParserRuleReturnScope {
		public WhereStatement stmt;
		Object tree;
		@Override
		public Object getTree() { return tree; }
	};


	// $ANTLR start "whereStatement"
	// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:41:1: whereStatement returns [WhereStatement stmt] : (a= ID EQUAL z= value |b= ID GT y= value |c= ID LT x= value |d= ID NOTEQUAL w= value );
	public final IndexQueryParser.whereStatement_return whereStatement() throws RecognitionException {
		IndexQueryParser.whereStatement_return retval = new IndexQueryParser.whereStatement_return();
		retval.start = input.LT(1);

		Object root_0 = null;

		Token a=null;
		Token b=null;
		Token c=null;
		Token d=null;
		Token EQUAL11=null;
		Token GT12=null;
		Token LT13=null;
		Token NOTEQUAL14=null;
		ParserRuleReturnScope z =null;
		ParserRuleReturnScope y =null;
		ParserRuleReturnScope x =null;
		ParserRuleReturnScope w =null;

		Object a_tree=null;
		Object b_tree=null;
		Object c_tree=null;
		Object d_tree=null;
		Object EQUAL11_tree=null;
		Object GT12_tree=null;
		Object LT13_tree=null;
		Object NOTEQUAL14_tree=null;

		try {
			// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:41:46: (a= ID EQUAL z= value |b= ID GT y= value |c= ID LT x= value |d= ID NOTEQUAL w= value )
			int alt9=4;
			int LA9_0 = input.LA(1);
			if ( (LA9_0==ID) ) {
				switch ( input.LA(2) ) {
				case EQUAL:
					{
					alt9=1;
					}
					break;
				case GT:
					{
					alt9=2;
					}
					break;
				case LT:
					{
					alt9=3;
					}
					break;
				case NOTEQUAL:
					{
					alt9=4;
					}
					break;
				default:
					int nvaeMark = input.mark();
					try {
						input.consume();
						NoViableAltException nvae =
							new NoViableAltException("", 9, 1, input);
						throw nvae;
					} finally {
						input.rewind(nvaeMark);
					}
				}
			}

			else {
				NoViableAltException nvae =
					new NoViableAltException("", 9, 0, input);
				throw nvae;
			}

			switch (alt9) {
				case 1 :
					// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:42:12: a= ID EQUAL z= value
					{
					root_0 = (Object)adaptor.nil();


					a=(Token)match(input,ID,FOLLOW_ID_in_whereStatement275); 
					a_tree = (Object)adaptor.create(a);
					adaptor.addChild(root_0, a_tree);

					EQUAL11=(Token)match(input,EQUAL,FOLLOW_EQUAL_in_whereStatement277); 
					EQUAL11_tree = (Object)adaptor.create(EQUAL11);
					adaptor.addChild(root_0, EQUAL11_tree);

					pushFollow(FOLLOW_value_in_whereStatement281);
					z=value();
					state._fsp--;

					adaptor.addChild(root_0, z.getTree());

					 retval.stmt = new WhereStatement((a!=null?a.getText():null), WhereTest.EQUAL, (z!=null?((IndexQueryParser.value_return)z).val:null)); 
					}
					break;
				case 2 :
					// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:43:12: b= ID GT y= value
					{
					root_0 = (Object)adaptor.nil();


					b=(Token)match(input,ID,FOLLOW_ID_in_whereStatement298); 
					b_tree = (Object)adaptor.create(b);
					adaptor.addChild(root_0, b_tree);

					GT12=(Token)match(input,GT,FOLLOW_GT_in_whereStatement300); 
					GT12_tree = (Object)adaptor.create(GT12);
					adaptor.addChild(root_0, GT12_tree);

					pushFollow(FOLLOW_value_in_whereStatement304);
					y=value();
					state._fsp--;

					adaptor.addChild(root_0, y.getTree());

					 retval.stmt = new WhereStatement((b!=null?b.getText():null), WhereTest.GT, (y!=null?((IndexQueryParser.value_return)y).val:null)); 
					}
					break;
				case 3 :
					// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:44:12: c= ID LT x= value
					{
					root_0 = (Object)adaptor.nil();


					c=(Token)match(input,ID,FOLLOW_ID_in_whereStatement321); 
					c_tree = (Object)adaptor.create(c);
					adaptor.addChild(root_0, c_tree);

					LT13=(Token)match(input,LT,FOLLOW_LT_in_whereStatement323); 
					LT13_tree = (Object)adaptor.create(LT13);
					adaptor.addChild(root_0, LT13_tree);

					pushFollow(FOLLOW_value_in_whereStatement327);
					x=value();
					state._fsp--;

					adaptor.addChild(root_0, x.getTree());

					 retval.stmt = new WhereStatement((c!=null?c.getText():null), WhereTest.LT, (x!=null?((IndexQueryParser.value_return)x).val:null)); 
					}
					break;
				case 4 :
					// /Users/amkimian/Development/cloud/Rapture/Libs/RaptureCore/src/main/antlr3/rapture/dsl/iqry/IndexQueryParser.g:45:12: d= ID NOTEQUAL w= value
					{
					root_0 = (Object)adaptor.nil();


					d=(Token)match(input,ID,FOLLOW_ID_in_whereStatement344); 
					d_tree = (Object)adaptor.create(d);
					adaptor.addChild(root_0, d_tree);

					NOTEQUAL14=(Token)match(input,NOTEQUAL,FOLLOW_NOTEQUAL_in_whereStatement346); 
					NOTEQUAL14_tree = (Object)adaptor.create(NOTEQUAL14);
					adaptor.addChild(root_0, NOTEQUAL14_tree);

					pushFollow(FOLLOW_value_in_whereStatement350);
					w=value();
					state._fsp--;

					adaptor.addChild(root_0, w.getTree());

					 retval.stmt = new WhereStatement((d!=null?d.getText():null), WhereTest.NOTEQUAL, (w!=null?((IndexQueryParser.value_return)w).val:null)); 
					}
					break;

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

			retval.tree = (Object)adaptor.rulePostProcessing(root_0);
			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);

		}
		catch (RecognitionException re) {
			reportError(re);
			recover(input,re);
			retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re);
		}
		finally {
			// do for sure before leaving
		}
		return retval;
	}
	// $ANTLR end "whereStatement"

	// Delegated rules



	public static final BitSet FOLLOW_SELECT_in_qry84 = new BitSet(new long[]{0x0000000000002400L});
	public static final BitSet FOLLOW_DISTINCT_in_qry87 = new BitSet(new long[]{0x0000000000002000L});
	public static final BitSet FOLLOW_fieldSet_in_qry96 = new BitSet(new long[]{0x0000000000904002L});
	public static final BitSet FOLLOW_WHERE_in_qry101 = new BitSet(new long[]{0x0000000000002000L});
	public static final BitSet FOLLOW_whereClause_in_qry105 = new BitSet(new long[]{0x0000000000104002L});
	public static final BitSet FOLLOW_ORDER_in_qry114 = new BitSet(new long[]{0x0000000000000040L});
	public static final BitSet FOLLOW_BY_in_qry116 = new BitSet(new long[]{0x0000000000002000L});
	public static final BitSet FOLLOW_fieldSet_in_qry120 = new BitSet(new long[]{0x0000000000004222L});
	public static final BitSet FOLLOW_ASC_in_qry125 = new BitSet(new long[]{0x0000000000004002L});
	public static final BitSet FOLLOW_DESC_in_qry131 = new BitSet(new long[]{0x0000000000004002L});
	public static final BitSet FOLLOW_LIMIT_in_qry143 = new BitSet(new long[]{0x0000000000020000L});
	public static final BitSet FOLLOW_NUMBER_in_qry145 = new BitSet(new long[]{0x0000000000000002L});
	public static final BitSet FOLLOW_ID_in_fieldSet168 = new BitSet(new long[]{0x0000000000000102L});
	public static final BitSet FOLLOW_COMMA_in_fieldSet173 = new BitSet(new long[]{0x0000000000002000L});
	public static final BitSet FOLLOW_ID_in_fieldSet177 = new BitSet(new long[]{0x0000000000000102L});
	public static final BitSet FOLLOW_whereStatement_in_whereClause202 = new BitSet(new long[]{0x0000000000080012L});
	public static final BitSet FOLLOW_set_in_whereClause209 = new BitSet(new long[]{0x0000000000002000L});
	public static final BitSet FOLLOW_whereStatement_in_whereClause219 = new BitSet(new long[]{0x0000000000080012L});
	public static final BitSet FOLLOW_STRING_in_value240 = new BitSet(new long[]{0x0000000000000002L});
	public static final BitSet FOLLOW_NUMBER_in_value249 = new BitSet(new long[]{0x0000000000000002L});
	public static final BitSet FOLLOW_ID_in_whereStatement275 = new BitSet(new long[]{0x0000000000000800L});
	public static final BitSet FOLLOW_EQUAL_in_whereStatement277 = new BitSet(new long[]{0x0000000000420000L});
	public static final BitSet FOLLOW_value_in_whereStatement281 = new BitSet(new long[]{0x0000000000000002L});
	public static final BitSet FOLLOW_ID_in_whereStatement298 = new BitSet(new long[]{0x0000000000001000L});
	public static final BitSet FOLLOW_GT_in_whereStatement300 = new BitSet(new long[]{0x0000000000420000L});
	public static final BitSet FOLLOW_value_in_whereStatement304 = new BitSet(new long[]{0x0000000000000002L});
	public static final BitSet FOLLOW_ID_in_whereStatement321 = new BitSet(new long[]{0x0000000000008000L});
	public static final BitSet FOLLOW_LT_in_whereStatement323 = new BitSet(new long[]{0x0000000000420000L});
	public static final BitSet FOLLOW_value_in_whereStatement327 = new BitSet(new long[]{0x0000000000000002L});
	public static final BitSet FOLLOW_ID_in_whereStatement344 = new BitSet(new long[]{0x0000000000010000L});
	public static final BitSet FOLLOW_NOTEQUAL_in_whereStatement346 = new BitSet(new long[]{0x0000000000420000L});
	public static final BitSet FOLLOW_value_in_whereStatement350 = new BitSet(new long[]{0x0000000000000002L});
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy