ork.cql.3.16.0.source-code.cqlParser Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of cql Show documentation
Show all versions of cql Show documentation
The cql library for the Clinical Quality Language Java reference implementation
// Generated from cql.g4 by ANTLR 4.13.1
package org.cqframework.cql.gen;
import org.antlr.v4.runtime.atn.*;
import org.antlr.v4.runtime.dfa.DFA;
import org.antlr.v4.runtime.*;
import org.antlr.v4.runtime.misc.*;
import org.antlr.v4.runtime.tree.*;
import java.util.List;
import java.util.Iterator;
import java.util.ArrayList;
@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast", "CheckReturnValue"})
public class cqlParser extends Parser {
static { RuntimeMetaData.checkVersion("4.13.1", RuntimeMetaData.VERSION); }
protected static final DFA[] _decisionToDFA;
protected static final PredictionContextCache _sharedContextCache =
new PredictionContextCache();
public static final int
T__0=1, T__1=2, T__2=3, T__3=4, T__4=5, T__5=6, T__6=7, T__7=8, T__8=9,
T__9=10, T__10=11, T__11=12, T__12=13, T__13=14, T__14=15, T__15=16, T__16=17,
T__17=18, T__18=19, T__19=20, T__20=21, T__21=22, T__22=23, T__23=24,
T__24=25, T__25=26, T__26=27, T__27=28, T__28=29, T__29=30, T__30=31,
T__31=32, T__32=33, T__33=34, T__34=35, T__35=36, T__36=37, T__37=38,
T__38=39, T__39=40, T__40=41, T__41=42, T__42=43, T__43=44, T__44=45,
T__45=46, T__46=47, T__47=48, T__48=49, T__49=50, T__50=51, T__51=52,
T__52=53, T__53=54, T__54=55, T__55=56, T__56=57, T__57=58, T__58=59,
T__59=60, T__60=61, T__61=62, T__62=63, T__63=64, T__64=65, T__65=66,
T__66=67, T__67=68, T__68=69, T__69=70, T__70=71, T__71=72, T__72=73,
T__73=74, T__74=75, T__75=76, T__76=77, T__77=78, T__78=79, T__79=80,
T__80=81, T__81=82, T__82=83, T__83=84, T__84=85, T__85=86, T__86=87,
T__87=88, T__88=89, T__89=90, T__90=91, T__91=92, T__92=93, T__93=94,
T__94=95, T__95=96, T__96=97, T__97=98, T__98=99, T__99=100, T__100=101,
T__101=102, T__102=103, T__103=104, T__104=105, T__105=106, T__106=107,
T__107=108, T__108=109, T__109=110, T__110=111, T__111=112, T__112=113,
T__113=114, T__114=115, T__115=116, T__116=117, T__117=118, T__118=119,
T__119=120, T__120=121, T__121=122, T__122=123, T__123=124, T__124=125,
T__125=126, T__126=127, T__127=128, T__128=129, T__129=130, T__130=131,
T__131=132, T__132=133, T__133=134, T__134=135, T__135=136, T__136=137,
T__137=138, T__138=139, T__139=140, T__140=141, T__141=142, T__142=143,
T__143=144, T__144=145, T__145=146, T__146=147, T__147=148, T__148=149,
T__149=150, T__150=151, T__151=152, T__152=153, T__153=154, T__154=155,
T__155=156, T__156=157, QUOTEDIDENTIFIER=158, DATETIME=159, LONGNUMBER=160,
DATE=161, TIME=162, IDENTIFIER=163, DELIMITEDIDENTIFIER=164, STRING=165,
NUMBER=166, WS=167, COMMENT=168, LINE_COMMENT=169;
public static final int
RULE_definition = 0, RULE_library = 1, RULE_libraryDefinition = 2, RULE_usingDefinition = 3,
RULE_includeDefinition = 4, RULE_localIdentifier = 5, RULE_accessModifier = 6,
RULE_parameterDefinition = 7, RULE_codesystemDefinition = 8, RULE_valuesetDefinition = 9,
RULE_codesystems = 10, RULE_codesystemIdentifier = 11, RULE_libraryIdentifier = 12,
RULE_codeDefinition = 13, RULE_conceptDefinition = 14, RULE_codeIdentifier = 15,
RULE_codesystemId = 16, RULE_valuesetId = 17, RULE_versionSpecifier = 18,
RULE_codeId = 19, RULE_typeSpecifier = 20, RULE_namedTypeSpecifier = 21,
RULE_modelIdentifier = 22, RULE_listTypeSpecifier = 23, RULE_intervalTypeSpecifier = 24,
RULE_tupleTypeSpecifier = 25, RULE_tupleElementDefinition = 26, RULE_choiceTypeSpecifier = 27,
RULE_statement = 28, RULE_expressionDefinition = 29, RULE_contextDefinition = 30,
RULE_fluentModifier = 31, RULE_functionDefinition = 32, RULE_operandDefinition = 33,
RULE_functionBody = 34, RULE_querySource = 35, RULE_aliasedQuerySource = 36,
RULE_alias = 37, RULE_queryInclusionClause = 38, RULE_withClause = 39,
RULE_withoutClause = 40, RULE_retrieve = 41, RULE_contextIdentifier = 42,
RULE_codePath = 43, RULE_codeComparator = 44, RULE_terminology = 45, RULE_qualifier = 46,
RULE_query = 47, RULE_sourceClause = 48, RULE_letClause = 49, RULE_letClauseItem = 50,
RULE_whereClause = 51, RULE_returnClause = 52, RULE_aggregateClause = 53,
RULE_startingClause = 54, RULE_sortClause = 55, RULE_sortDirection = 56,
RULE_sortByItem = 57, RULE_qualifiedIdentifier = 58, RULE_qualifiedIdentifierExpression = 59,
RULE_qualifierExpression = 60, RULE_simplePath = 61, RULE_simpleLiteral = 62,
RULE_expression = 63, RULE_dateTimePrecision = 64, RULE_dateTimeComponent = 65,
RULE_pluralDateTimePrecision = 66, RULE_expressionTerm = 67, RULE_caseExpressionItem = 68,
RULE_dateTimePrecisionSpecifier = 69, RULE_relativeQualifier = 70, RULE_offsetRelativeQualifier = 71,
RULE_exclusiveRelativeQualifier = 72, RULE_quantityOffset = 73, RULE_temporalRelationship = 74,
RULE_intervalOperatorPhrase = 75, RULE_term = 76, RULE_qualifiedInvocation = 77,
RULE_qualifiedFunction = 78, RULE_invocation = 79, RULE_function = 80,
RULE_ratio = 81, RULE_literal = 82, RULE_intervalSelector = 83, RULE_tupleSelector = 84,
RULE_tupleElementSelector = 85, RULE_instanceSelector = 86, RULE_instanceElementSelector = 87,
RULE_listSelector = 88, RULE_displayClause = 89, RULE_codeSelector = 90,
RULE_conceptSelector = 91, RULE_keyword = 92, RULE_reservedWord = 93,
RULE_keywordIdentifier = 94, RULE_obsoleteIdentifier = 95, RULE_functionIdentifier = 96,
RULE_typeNameIdentifier = 97, RULE_referentialIdentifier = 98, RULE_referentialOrTypeNameIdentifier = 99,
RULE_identifierOrFunctionIdentifier = 100, RULE_identifier = 101, RULE_externalConstant = 102,
RULE_paramList = 103, RULE_quantity = 104, RULE_unit = 105;
private static String[] makeRuleNames() {
return new String[] {
"definition", "library", "libraryDefinition", "usingDefinition", "includeDefinition",
"localIdentifier", "accessModifier", "parameterDefinition", "codesystemDefinition",
"valuesetDefinition", "codesystems", "codesystemIdentifier", "libraryIdentifier",
"codeDefinition", "conceptDefinition", "codeIdentifier", "codesystemId",
"valuesetId", "versionSpecifier", "codeId", "typeSpecifier", "namedTypeSpecifier",
"modelIdentifier", "listTypeSpecifier", "intervalTypeSpecifier", "tupleTypeSpecifier",
"tupleElementDefinition", "choiceTypeSpecifier", "statement", "expressionDefinition",
"contextDefinition", "fluentModifier", "functionDefinition", "operandDefinition",
"functionBody", "querySource", "aliasedQuerySource", "alias", "queryInclusionClause",
"withClause", "withoutClause", "retrieve", "contextIdentifier", "codePath",
"codeComparator", "terminology", "qualifier", "query", "sourceClause",
"letClause", "letClauseItem", "whereClause", "returnClause", "aggregateClause",
"startingClause", "sortClause", "sortDirection", "sortByItem", "qualifiedIdentifier",
"qualifiedIdentifierExpression", "qualifierExpression", "simplePath",
"simpleLiteral", "expression", "dateTimePrecision", "dateTimeComponent",
"pluralDateTimePrecision", "expressionTerm", "caseExpressionItem", "dateTimePrecisionSpecifier",
"relativeQualifier", "offsetRelativeQualifier", "exclusiveRelativeQualifier",
"quantityOffset", "temporalRelationship", "intervalOperatorPhrase", "term",
"qualifiedInvocation", "qualifiedFunction", "invocation", "function",
"ratio", "literal", "intervalSelector", "tupleSelector", "tupleElementSelector",
"instanceSelector", "instanceElementSelector", "listSelector", "displayClause",
"codeSelector", "conceptSelector", "keyword", "reservedWord", "keywordIdentifier",
"obsoleteIdentifier", "functionIdentifier", "typeNameIdentifier", "referentialIdentifier",
"referentialOrTypeNameIdentifier", "identifierOrFunctionIdentifier",
"identifier", "externalConstant", "paramList", "quantity", "unit"
};
}
public static final String[] ruleNames = makeRuleNames();
private static String[] makeLiteralNames() {
return new String[] {
null, "'library'", "'version'", "'using'", "'called'", "'include'", "'public'",
"'private'", "'parameter'", "'default'", "'codesystem'", "':'", "'valueset'",
"'codesystems'", "'{'", "','", "'}'", "'.'", "'code'", "'from'", "'concept'",
"'List'", "'<'", "'>'", "'Interval'", "'Tuple'", "'Choice'", "'define'",
"'context'", "'fluent'", "'function'", "'('", "')'", "'returns'", "'external'",
"'with'", "'such that'", "'without'", "'['", "'->'", "']'", "'in'", "'='",
"'~'", "'let'", "'where'", "'return'", "'all'", "'distinct'", "'aggregate'",
"'starting'", "'sort'", "'by'", "'asc'", "'ascending'", "'desc'", "'descending'",
"'is'", "'not'", "'null'", "'true'", "'false'", "'as'", "'cast'", "'exists'",
"'properly'", "'between'", "'and'", "'duration'", "'difference'", "'<='",
"'>='", "'!='", "'!~'", "'contains'", "'or'", "'xor'", "'implies'", "'|'",
"'union'", "'intersect'", "'except'", "'year'", "'month'", "'week'",
"'day'", "'hour'", "'minute'", "'second'", "'millisecond'", "'date'",
"'time'", "'timezone'", "'timezoneoffset'", "'years'", "'months'", "'weeks'",
"'days'", "'hours'", "'minutes'", "'seconds'", "'milliseconds'", "'convert'",
"'to'", "'+'", "'-'", "'start'", "'end'", "'of'", "'width'", "'successor'",
"'predecessor'", "'singleton'", "'point'", "'minimum'", "'maximum'",
"'^'", "'*'", "'/'", "'div'", "'mod'", "'&'", "'if'", "'then'", "'else'",
"'case'", "'flatten'", "'expand'", "'collapse'", "'per'", "'when'", "'or before'",
"'or after'", "'or more'", "'or less'", "'less than'", "'more than'",
"'on or'", "'before'", "'after'", "'or on'", "'starts'", "'ends'", "'occurs'",
"'same'", "'includes'", "'during'", "'included in'", "'within'", "'meets'",
"'overlaps'", "'$this'", "'$index'", "'$total'", "'display'", "'Code'",
"'Concept'", "'%'"
};
}
private static final String[] _LITERAL_NAMES = makeLiteralNames();
private static String[] makeSymbolicNames() {
return new String[] {
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, "QUOTEDIDENTIFIER", "DATETIME", "LONGNUMBER", "DATE", "TIME",
"IDENTIFIER", "DELIMITEDIDENTIFIER", "STRING", "NUMBER", "WS", "COMMENT",
"LINE_COMMENT"
};
}
private static final String[] _SYMBOLIC_NAMES = makeSymbolicNames();
public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES);
/**
* @deprecated Use {@link #VOCABULARY} instead.
*/
@Deprecated
public static final String[] tokenNames;
static {
tokenNames = new String[_SYMBOLIC_NAMES.length];
for (int i = 0; i < tokenNames.length; i++) {
tokenNames[i] = VOCABULARY.getLiteralName(i);
if (tokenNames[i] == null) {
tokenNames[i] = VOCABULARY.getSymbolicName(i);
}
if (tokenNames[i] == null) {
tokenNames[i] = "";
}
}
}
@Override
@Deprecated
public String[] getTokenNames() {
return tokenNames;
}
@Override
public Vocabulary getVocabulary() {
return VOCABULARY;
}
@Override
public String getGrammarFileName() { return "cql.g4"; }
@Override
public String[] getRuleNames() { return ruleNames; }
@Override
public String getSerializedATN() { return _serializedATN; }
@Override
public ATN getATN() { return _ATN; }
public cqlParser(TokenStream input) {
super(input);
_interp = new ParserATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache);
}
@SuppressWarnings("CheckReturnValue")
public static class DefinitionContext extends ParserRuleContext {
public UsingDefinitionContext usingDefinition() {
return getRuleContext(UsingDefinitionContext.class,0);
}
public IncludeDefinitionContext includeDefinition() {
return getRuleContext(IncludeDefinitionContext.class,0);
}
public CodesystemDefinitionContext codesystemDefinition() {
return getRuleContext(CodesystemDefinitionContext.class,0);
}
public ValuesetDefinitionContext valuesetDefinition() {
return getRuleContext(ValuesetDefinitionContext.class,0);
}
public CodeDefinitionContext codeDefinition() {
return getRuleContext(CodeDefinitionContext.class,0);
}
public ConceptDefinitionContext conceptDefinition() {
return getRuleContext(ConceptDefinitionContext.class,0);
}
public ParameterDefinitionContext parameterDefinition() {
return getRuleContext(ParameterDefinitionContext.class,0);
}
public DefinitionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_definition; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterDefinition(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitDefinition(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitDefinition(this);
else return visitor.visitChildren(this);
}
}
public final DefinitionContext definition() throws RecognitionException {
DefinitionContext _localctx = new DefinitionContext(_ctx, getState());
enterRule(_localctx, 0, RULE_definition);
try {
setState(219);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,0,_ctx) ) {
case 1:
enterOuterAlt(_localctx, 1);
{
setState(212);
usingDefinition();
}
break;
case 2:
enterOuterAlt(_localctx, 2);
{
setState(213);
includeDefinition();
}
break;
case 3:
enterOuterAlt(_localctx, 3);
{
setState(214);
codesystemDefinition();
}
break;
case 4:
enterOuterAlt(_localctx, 4);
{
setState(215);
valuesetDefinition();
}
break;
case 5:
enterOuterAlt(_localctx, 5);
{
setState(216);
codeDefinition();
}
break;
case 6:
enterOuterAlt(_localctx, 6);
{
setState(217);
conceptDefinition();
}
break;
case 7:
enterOuterAlt(_localctx, 7);
{
setState(218);
parameterDefinition();
}
break;
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class LibraryContext extends ParserRuleContext {
public TerminalNode EOF() { return getToken(cqlParser.EOF, 0); }
public LibraryDefinitionContext libraryDefinition() {
return getRuleContext(LibraryDefinitionContext.class,0);
}
public List definition() {
return getRuleContexts(DefinitionContext.class);
}
public DefinitionContext definition(int i) {
return getRuleContext(DefinitionContext.class,i);
}
public List statement() {
return getRuleContexts(StatementContext.class);
}
public StatementContext statement(int i) {
return getRuleContext(StatementContext.class,i);
}
public LibraryContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_library; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterLibrary(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitLibrary(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitLibrary(this);
else return visitor.visitChildren(this);
}
}
public final LibraryContext library() throws RecognitionException {
LibraryContext _localctx = new LibraryContext(_ctx, getState());
enterRule(_localctx, 2, RULE_library);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(222);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__0) {
{
setState(221);
libraryDefinition();
}
}
setState(227);
_errHandler.sync(this);
_la = _input.LA(1);
while ((((_la) & ~0x3f) == 0 && ((1L << _la) & 1316328L) != 0)) {
{
{
setState(224);
definition();
}
}
setState(229);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(233);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__26 || _la==T__27) {
{
{
setState(230);
statement();
}
}
setState(235);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(236);
match(EOF);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class LibraryDefinitionContext extends ParserRuleContext {
public QualifiedIdentifierContext qualifiedIdentifier() {
return getRuleContext(QualifiedIdentifierContext.class,0);
}
public VersionSpecifierContext versionSpecifier() {
return getRuleContext(VersionSpecifierContext.class,0);
}
public LibraryDefinitionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_libraryDefinition; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterLibraryDefinition(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitLibraryDefinition(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitLibraryDefinition(this);
else return visitor.visitChildren(this);
}
}
public final LibraryDefinitionContext libraryDefinition() throws RecognitionException {
LibraryDefinitionContext _localctx = new LibraryDefinitionContext(_ctx, getState());
enterRule(_localctx, 4, RULE_libraryDefinition);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(238);
match(T__0);
setState(239);
qualifiedIdentifier();
setState(242);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__1) {
{
setState(240);
match(T__1);
setState(241);
versionSpecifier();
}
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class UsingDefinitionContext extends ParserRuleContext {
public QualifiedIdentifierContext qualifiedIdentifier() {
return getRuleContext(QualifiedIdentifierContext.class,0);
}
public VersionSpecifierContext versionSpecifier() {
return getRuleContext(VersionSpecifierContext.class,0);
}
public LocalIdentifierContext localIdentifier() {
return getRuleContext(LocalIdentifierContext.class,0);
}
public UsingDefinitionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_usingDefinition; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterUsingDefinition(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitUsingDefinition(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitUsingDefinition(this);
else return visitor.visitChildren(this);
}
}
public final UsingDefinitionContext usingDefinition() throws RecognitionException {
UsingDefinitionContext _localctx = new UsingDefinitionContext(_ctx, getState());
enterRule(_localctx, 6, RULE_usingDefinition);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(244);
match(T__2);
setState(245);
qualifiedIdentifier();
setState(248);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__1) {
{
setState(246);
match(T__1);
setState(247);
versionSpecifier();
}
}
setState(252);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__3) {
{
setState(250);
match(T__3);
setState(251);
localIdentifier();
}
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class IncludeDefinitionContext extends ParserRuleContext {
public QualifiedIdentifierContext qualifiedIdentifier() {
return getRuleContext(QualifiedIdentifierContext.class,0);
}
public VersionSpecifierContext versionSpecifier() {
return getRuleContext(VersionSpecifierContext.class,0);
}
public LocalIdentifierContext localIdentifier() {
return getRuleContext(LocalIdentifierContext.class,0);
}
public IncludeDefinitionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_includeDefinition; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterIncludeDefinition(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitIncludeDefinition(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitIncludeDefinition(this);
else return visitor.visitChildren(this);
}
}
public final IncludeDefinitionContext includeDefinition() throws RecognitionException {
IncludeDefinitionContext _localctx = new IncludeDefinitionContext(_ctx, getState());
enterRule(_localctx, 8, RULE_includeDefinition);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(254);
match(T__4);
setState(255);
qualifiedIdentifier();
setState(258);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__1) {
{
setState(256);
match(T__1);
setState(257);
versionSpecifier();
}
}
setState(262);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__3) {
{
setState(260);
match(T__3);
setState(261);
localIdentifier();
}
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class LocalIdentifierContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public LocalIdentifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_localIdentifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterLocalIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitLocalIdentifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitLocalIdentifier(this);
else return visitor.visitChildren(this);
}
}
public final LocalIdentifierContext localIdentifier() throws RecognitionException {
LocalIdentifierContext _localctx = new LocalIdentifierContext(_ctx, getState());
enterRule(_localctx, 10, RULE_localIdentifier);
try {
enterOuterAlt(_localctx, 1);
{
setState(264);
identifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class AccessModifierContext extends ParserRuleContext {
public AccessModifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_accessModifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterAccessModifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitAccessModifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitAccessModifier(this);
else return visitor.visitChildren(this);
}
}
public final AccessModifierContext accessModifier() throws RecognitionException {
AccessModifierContext _localctx = new AccessModifierContext(_ctx, getState());
enterRule(_localctx, 12, RULE_accessModifier);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(266);
_la = _input.LA(1);
if ( !(_la==T__5 || _la==T__6) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ParameterDefinitionContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public AccessModifierContext accessModifier() {
return getRuleContext(AccessModifierContext.class,0);
}
public TypeSpecifierContext typeSpecifier() {
return getRuleContext(TypeSpecifierContext.class,0);
}
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public ParameterDefinitionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_parameterDefinition; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterParameterDefinition(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitParameterDefinition(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitParameterDefinition(this);
else return visitor.visitChildren(this);
}
}
public final ParameterDefinitionContext parameterDefinition() throws RecognitionException {
ParameterDefinitionContext _localctx = new ParameterDefinitionContext(_ctx, getState());
enterRule(_localctx, 14, RULE_parameterDefinition);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(269);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__5 || _la==T__6) {
{
setState(268);
accessModifier();
}
}
setState(271);
match(T__7);
setState(272);
identifier();
setState(274);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,10,_ctx) ) {
case 1:
{
setState(273);
typeSpecifier();
}
break;
}
setState(278);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__8) {
{
setState(276);
match(T__8);
setState(277);
expression(0);
}
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class CodesystemDefinitionContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public CodesystemIdContext codesystemId() {
return getRuleContext(CodesystemIdContext.class,0);
}
public AccessModifierContext accessModifier() {
return getRuleContext(AccessModifierContext.class,0);
}
public VersionSpecifierContext versionSpecifier() {
return getRuleContext(VersionSpecifierContext.class,0);
}
public CodesystemDefinitionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_codesystemDefinition; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterCodesystemDefinition(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitCodesystemDefinition(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitCodesystemDefinition(this);
else return visitor.visitChildren(this);
}
}
public final CodesystemDefinitionContext codesystemDefinition() throws RecognitionException {
CodesystemDefinitionContext _localctx = new CodesystemDefinitionContext(_ctx, getState());
enterRule(_localctx, 16, RULE_codesystemDefinition);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(281);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__5 || _la==T__6) {
{
setState(280);
accessModifier();
}
}
setState(283);
match(T__9);
setState(284);
identifier();
setState(285);
match(T__10);
setState(286);
codesystemId();
setState(289);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__1) {
{
setState(287);
match(T__1);
setState(288);
versionSpecifier();
}
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ValuesetDefinitionContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public ValuesetIdContext valuesetId() {
return getRuleContext(ValuesetIdContext.class,0);
}
public AccessModifierContext accessModifier() {
return getRuleContext(AccessModifierContext.class,0);
}
public VersionSpecifierContext versionSpecifier() {
return getRuleContext(VersionSpecifierContext.class,0);
}
public CodesystemsContext codesystems() {
return getRuleContext(CodesystemsContext.class,0);
}
public ValuesetDefinitionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_valuesetDefinition; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterValuesetDefinition(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitValuesetDefinition(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitValuesetDefinition(this);
else return visitor.visitChildren(this);
}
}
public final ValuesetDefinitionContext valuesetDefinition() throws RecognitionException {
ValuesetDefinitionContext _localctx = new ValuesetDefinitionContext(_ctx, getState());
enterRule(_localctx, 18, RULE_valuesetDefinition);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(292);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__5 || _la==T__6) {
{
setState(291);
accessModifier();
}
}
setState(294);
match(T__11);
setState(295);
identifier();
setState(296);
match(T__10);
setState(297);
valuesetId();
setState(300);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__1) {
{
setState(298);
match(T__1);
setState(299);
versionSpecifier();
}
}
setState(303);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__12) {
{
setState(302);
codesystems();
}
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class CodesystemsContext extends ParserRuleContext {
public List codesystemIdentifier() {
return getRuleContexts(CodesystemIdentifierContext.class);
}
public CodesystemIdentifierContext codesystemIdentifier(int i) {
return getRuleContext(CodesystemIdentifierContext.class,i);
}
public CodesystemsContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_codesystems; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterCodesystems(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitCodesystems(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitCodesystems(this);
else return visitor.visitChildren(this);
}
}
public final CodesystemsContext codesystems() throws RecognitionException {
CodesystemsContext _localctx = new CodesystemsContext(_ctx, getState());
enterRule(_localctx, 20, RULE_codesystems);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(305);
match(T__12);
setState(306);
match(T__13);
setState(307);
codesystemIdentifier();
setState(312);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__14) {
{
{
setState(308);
match(T__14);
setState(309);
codesystemIdentifier();
}
}
setState(314);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(315);
match(T__15);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class CodesystemIdentifierContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public LibraryIdentifierContext libraryIdentifier() {
return getRuleContext(LibraryIdentifierContext.class,0);
}
public CodesystemIdentifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_codesystemIdentifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterCodesystemIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitCodesystemIdentifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitCodesystemIdentifier(this);
else return visitor.visitChildren(this);
}
}
public final CodesystemIdentifierContext codesystemIdentifier() throws RecognitionException {
CodesystemIdentifierContext _localctx = new CodesystemIdentifierContext(_ctx, getState());
enterRule(_localctx, 22, RULE_codesystemIdentifier);
try {
enterOuterAlt(_localctx, 1);
{
setState(320);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,18,_ctx) ) {
case 1:
{
setState(317);
libraryIdentifier();
setState(318);
match(T__16);
}
break;
}
setState(322);
identifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class LibraryIdentifierContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public LibraryIdentifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_libraryIdentifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterLibraryIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitLibraryIdentifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitLibraryIdentifier(this);
else return visitor.visitChildren(this);
}
}
public final LibraryIdentifierContext libraryIdentifier() throws RecognitionException {
LibraryIdentifierContext _localctx = new LibraryIdentifierContext(_ctx, getState());
enterRule(_localctx, 24, RULE_libraryIdentifier);
try {
enterOuterAlt(_localctx, 1);
{
setState(324);
identifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class CodeDefinitionContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public CodeIdContext codeId() {
return getRuleContext(CodeIdContext.class,0);
}
public CodesystemIdentifierContext codesystemIdentifier() {
return getRuleContext(CodesystemIdentifierContext.class,0);
}
public AccessModifierContext accessModifier() {
return getRuleContext(AccessModifierContext.class,0);
}
public DisplayClauseContext displayClause() {
return getRuleContext(DisplayClauseContext.class,0);
}
public CodeDefinitionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_codeDefinition; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterCodeDefinition(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitCodeDefinition(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitCodeDefinition(this);
else return visitor.visitChildren(this);
}
}
public final CodeDefinitionContext codeDefinition() throws RecognitionException {
CodeDefinitionContext _localctx = new CodeDefinitionContext(_ctx, getState());
enterRule(_localctx, 26, RULE_codeDefinition);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(327);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__5 || _la==T__6) {
{
setState(326);
accessModifier();
}
}
setState(329);
match(T__17);
setState(330);
identifier();
setState(331);
match(T__10);
setState(332);
codeId();
setState(333);
match(T__18);
setState(334);
codesystemIdentifier();
setState(336);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__153) {
{
setState(335);
displayClause();
}
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ConceptDefinitionContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public List codeIdentifier() {
return getRuleContexts(CodeIdentifierContext.class);
}
public CodeIdentifierContext codeIdentifier(int i) {
return getRuleContext(CodeIdentifierContext.class,i);
}
public AccessModifierContext accessModifier() {
return getRuleContext(AccessModifierContext.class,0);
}
public DisplayClauseContext displayClause() {
return getRuleContext(DisplayClauseContext.class,0);
}
public ConceptDefinitionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_conceptDefinition; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterConceptDefinition(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitConceptDefinition(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitConceptDefinition(this);
else return visitor.visitChildren(this);
}
}
public final ConceptDefinitionContext conceptDefinition() throws RecognitionException {
ConceptDefinitionContext _localctx = new ConceptDefinitionContext(_ctx, getState());
enterRule(_localctx, 28, RULE_conceptDefinition);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(339);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__5 || _la==T__6) {
{
setState(338);
accessModifier();
}
}
setState(341);
match(T__19);
setState(342);
identifier();
setState(343);
match(T__10);
setState(344);
match(T__13);
setState(345);
codeIdentifier();
setState(350);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__14) {
{
{
setState(346);
match(T__14);
setState(347);
codeIdentifier();
}
}
setState(352);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(353);
match(T__15);
setState(355);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__153) {
{
setState(354);
displayClause();
}
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class CodeIdentifierContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public LibraryIdentifierContext libraryIdentifier() {
return getRuleContext(LibraryIdentifierContext.class,0);
}
public CodeIdentifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_codeIdentifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterCodeIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitCodeIdentifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitCodeIdentifier(this);
else return visitor.visitChildren(this);
}
}
public final CodeIdentifierContext codeIdentifier() throws RecognitionException {
CodeIdentifierContext _localctx = new CodeIdentifierContext(_ctx, getState());
enterRule(_localctx, 30, RULE_codeIdentifier);
try {
enterOuterAlt(_localctx, 1);
{
setState(360);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,24,_ctx) ) {
case 1:
{
setState(357);
libraryIdentifier();
setState(358);
match(T__16);
}
break;
}
setState(362);
identifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class CodesystemIdContext extends ParserRuleContext {
public TerminalNode STRING() { return getToken(cqlParser.STRING, 0); }
public CodesystemIdContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_codesystemId; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterCodesystemId(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitCodesystemId(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitCodesystemId(this);
else return visitor.visitChildren(this);
}
}
public final CodesystemIdContext codesystemId() throws RecognitionException {
CodesystemIdContext _localctx = new CodesystemIdContext(_ctx, getState());
enterRule(_localctx, 32, RULE_codesystemId);
try {
enterOuterAlt(_localctx, 1);
{
setState(364);
match(STRING);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ValuesetIdContext extends ParserRuleContext {
public TerminalNode STRING() { return getToken(cqlParser.STRING, 0); }
public ValuesetIdContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_valuesetId; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterValuesetId(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitValuesetId(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitValuesetId(this);
else return visitor.visitChildren(this);
}
}
public final ValuesetIdContext valuesetId() throws RecognitionException {
ValuesetIdContext _localctx = new ValuesetIdContext(_ctx, getState());
enterRule(_localctx, 34, RULE_valuesetId);
try {
enterOuterAlt(_localctx, 1);
{
setState(366);
match(STRING);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class VersionSpecifierContext extends ParserRuleContext {
public TerminalNode STRING() { return getToken(cqlParser.STRING, 0); }
public VersionSpecifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_versionSpecifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterVersionSpecifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitVersionSpecifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitVersionSpecifier(this);
else return visitor.visitChildren(this);
}
}
public final VersionSpecifierContext versionSpecifier() throws RecognitionException {
VersionSpecifierContext _localctx = new VersionSpecifierContext(_ctx, getState());
enterRule(_localctx, 36, RULE_versionSpecifier);
try {
enterOuterAlt(_localctx, 1);
{
setState(368);
match(STRING);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class CodeIdContext extends ParserRuleContext {
public TerminalNode STRING() { return getToken(cqlParser.STRING, 0); }
public CodeIdContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_codeId; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterCodeId(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitCodeId(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitCodeId(this);
else return visitor.visitChildren(this);
}
}
public final CodeIdContext codeId() throws RecognitionException {
CodeIdContext _localctx = new CodeIdContext(_ctx, getState());
enterRule(_localctx, 38, RULE_codeId);
try {
enterOuterAlt(_localctx, 1);
{
setState(370);
match(STRING);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class TypeSpecifierContext extends ParserRuleContext {
public NamedTypeSpecifierContext namedTypeSpecifier() {
return getRuleContext(NamedTypeSpecifierContext.class,0);
}
public ListTypeSpecifierContext listTypeSpecifier() {
return getRuleContext(ListTypeSpecifierContext.class,0);
}
public IntervalTypeSpecifierContext intervalTypeSpecifier() {
return getRuleContext(IntervalTypeSpecifierContext.class,0);
}
public TupleTypeSpecifierContext tupleTypeSpecifier() {
return getRuleContext(TupleTypeSpecifierContext.class,0);
}
public ChoiceTypeSpecifierContext choiceTypeSpecifier() {
return getRuleContext(ChoiceTypeSpecifierContext.class,0);
}
public TypeSpecifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_typeSpecifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTypeSpecifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTypeSpecifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTypeSpecifier(this);
else return visitor.visitChildren(this);
}
}
public final TypeSpecifierContext typeSpecifier() throws RecognitionException {
TypeSpecifierContext _localctx = new TypeSpecifierContext(_ctx, getState());
enterRule(_localctx, 40, RULE_typeSpecifier);
try {
setState(377);
_errHandler.sync(this);
switch (_input.LA(1)) {
case T__0:
case T__1:
case T__2:
case T__3:
case T__4:
case T__5:
case T__6:
case T__7:
case T__8:
case T__9:
case T__11:
case T__12:
case T__17:
case T__19:
case T__26:
case T__27:
case T__28:
case T__29:
case T__44:
case T__49:
case T__51:
case T__52:
case T__53:
case T__54:
case T__55:
case T__73:
case T__75:
case T__76:
case T__78:
case T__79:
case T__80:
case T__89:
case T__90:
case T__91:
case T__92:
case T__105:
case T__106:
case T__108:
case T__109:
case T__110:
case T__118:
case T__119:
case T__130:
case T__131:
case T__132:
case T__133:
case T__140:
case T__141:
case T__144:
case T__148:
case T__149:
case T__153:
case T__154:
case T__155:
case QUOTEDIDENTIFIER:
case IDENTIFIER:
case DELIMITEDIDENTIFIER:
enterOuterAlt(_localctx, 1);
{
setState(372);
namedTypeSpecifier();
}
break;
case T__20:
enterOuterAlt(_localctx, 2);
{
setState(373);
listTypeSpecifier();
}
break;
case T__23:
enterOuterAlt(_localctx, 3);
{
setState(374);
intervalTypeSpecifier();
}
break;
case T__24:
enterOuterAlt(_localctx, 4);
{
setState(375);
tupleTypeSpecifier();
}
break;
case T__25:
enterOuterAlt(_localctx, 5);
{
setState(376);
choiceTypeSpecifier();
}
break;
default:
throw new NoViableAltException(this);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class NamedTypeSpecifierContext extends ParserRuleContext {
public ReferentialOrTypeNameIdentifierContext referentialOrTypeNameIdentifier() {
return getRuleContext(ReferentialOrTypeNameIdentifierContext.class,0);
}
public List qualifier() {
return getRuleContexts(QualifierContext.class);
}
public QualifierContext qualifier(int i) {
return getRuleContext(QualifierContext.class,i);
}
public NamedTypeSpecifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_namedTypeSpecifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterNamedTypeSpecifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitNamedTypeSpecifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitNamedTypeSpecifier(this);
else return visitor.visitChildren(this);
}
}
public final NamedTypeSpecifierContext namedTypeSpecifier() throws RecognitionException {
NamedTypeSpecifierContext _localctx = new NamedTypeSpecifierContext(_ctx, getState());
enterRule(_localctx, 42, RULE_namedTypeSpecifier);
try {
int _alt;
enterOuterAlt(_localctx, 1);
{
setState(384);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,26,_ctx);
while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
if ( _alt==1 ) {
{
{
setState(379);
qualifier();
setState(380);
match(T__16);
}
}
}
setState(386);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,26,_ctx);
}
setState(387);
referentialOrTypeNameIdentifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ModelIdentifierContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public ModelIdentifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_modelIdentifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterModelIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitModelIdentifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitModelIdentifier(this);
else return visitor.visitChildren(this);
}
}
public final ModelIdentifierContext modelIdentifier() throws RecognitionException {
ModelIdentifierContext _localctx = new ModelIdentifierContext(_ctx, getState());
enterRule(_localctx, 44, RULE_modelIdentifier);
try {
enterOuterAlt(_localctx, 1);
{
setState(389);
identifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ListTypeSpecifierContext extends ParserRuleContext {
public TypeSpecifierContext typeSpecifier() {
return getRuleContext(TypeSpecifierContext.class,0);
}
public ListTypeSpecifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_listTypeSpecifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterListTypeSpecifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitListTypeSpecifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitListTypeSpecifier(this);
else return visitor.visitChildren(this);
}
}
public final ListTypeSpecifierContext listTypeSpecifier() throws RecognitionException {
ListTypeSpecifierContext _localctx = new ListTypeSpecifierContext(_ctx, getState());
enterRule(_localctx, 46, RULE_listTypeSpecifier);
try {
enterOuterAlt(_localctx, 1);
{
setState(391);
match(T__20);
setState(392);
match(T__21);
setState(393);
typeSpecifier();
setState(394);
match(T__22);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class IntervalTypeSpecifierContext extends ParserRuleContext {
public TypeSpecifierContext typeSpecifier() {
return getRuleContext(TypeSpecifierContext.class,0);
}
public IntervalTypeSpecifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_intervalTypeSpecifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterIntervalTypeSpecifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitIntervalTypeSpecifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitIntervalTypeSpecifier(this);
else return visitor.visitChildren(this);
}
}
public final IntervalTypeSpecifierContext intervalTypeSpecifier() throws RecognitionException {
IntervalTypeSpecifierContext _localctx = new IntervalTypeSpecifierContext(_ctx, getState());
enterRule(_localctx, 48, RULE_intervalTypeSpecifier);
try {
enterOuterAlt(_localctx, 1);
{
setState(396);
match(T__23);
setState(397);
match(T__21);
setState(398);
typeSpecifier();
setState(399);
match(T__22);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class TupleTypeSpecifierContext extends ParserRuleContext {
public List tupleElementDefinition() {
return getRuleContexts(TupleElementDefinitionContext.class);
}
public TupleElementDefinitionContext tupleElementDefinition(int i) {
return getRuleContext(TupleElementDefinitionContext.class,i);
}
public TupleTypeSpecifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_tupleTypeSpecifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTupleTypeSpecifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTupleTypeSpecifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTupleTypeSpecifier(this);
else return visitor.visitChildren(this);
}
}
public final TupleTypeSpecifierContext tupleTypeSpecifier() throws RecognitionException {
TupleTypeSpecifierContext _localctx = new TupleTypeSpecifierContext(_ctx, getState());
enterRule(_localctx, 50, RULE_tupleTypeSpecifier);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(401);
match(T__24);
setState(402);
match(T__13);
setState(403);
tupleElementDefinition();
setState(408);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__14) {
{
{
setState(404);
match(T__14);
setState(405);
tupleElementDefinition();
}
}
setState(410);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(411);
match(T__15);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class TupleElementDefinitionContext extends ParserRuleContext {
public ReferentialIdentifierContext referentialIdentifier() {
return getRuleContext(ReferentialIdentifierContext.class,0);
}
public TypeSpecifierContext typeSpecifier() {
return getRuleContext(TypeSpecifierContext.class,0);
}
public TupleElementDefinitionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_tupleElementDefinition; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTupleElementDefinition(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTupleElementDefinition(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTupleElementDefinition(this);
else return visitor.visitChildren(this);
}
}
public final TupleElementDefinitionContext tupleElementDefinition() throws RecognitionException {
TupleElementDefinitionContext _localctx = new TupleElementDefinitionContext(_ctx, getState());
enterRule(_localctx, 52, RULE_tupleElementDefinition);
try {
enterOuterAlt(_localctx, 1);
{
setState(413);
referentialIdentifier();
setState(414);
typeSpecifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ChoiceTypeSpecifierContext extends ParserRuleContext {
public List typeSpecifier() {
return getRuleContexts(TypeSpecifierContext.class);
}
public TypeSpecifierContext typeSpecifier(int i) {
return getRuleContext(TypeSpecifierContext.class,i);
}
public ChoiceTypeSpecifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_choiceTypeSpecifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterChoiceTypeSpecifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitChoiceTypeSpecifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitChoiceTypeSpecifier(this);
else return visitor.visitChildren(this);
}
}
public final ChoiceTypeSpecifierContext choiceTypeSpecifier() throws RecognitionException {
ChoiceTypeSpecifierContext _localctx = new ChoiceTypeSpecifierContext(_ctx, getState());
enterRule(_localctx, 54, RULE_choiceTypeSpecifier);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(416);
match(T__25);
setState(417);
match(T__21);
setState(418);
typeSpecifier();
setState(423);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__14) {
{
{
setState(419);
match(T__14);
setState(420);
typeSpecifier();
}
}
setState(425);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(426);
match(T__22);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class StatementContext extends ParserRuleContext {
public ExpressionDefinitionContext expressionDefinition() {
return getRuleContext(ExpressionDefinitionContext.class,0);
}
public ContextDefinitionContext contextDefinition() {
return getRuleContext(ContextDefinitionContext.class,0);
}
public FunctionDefinitionContext functionDefinition() {
return getRuleContext(FunctionDefinitionContext.class,0);
}
public StatementContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_statement; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterStatement(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitStatement(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitStatement(this);
else return visitor.visitChildren(this);
}
}
public final StatementContext statement() throws RecognitionException {
StatementContext _localctx = new StatementContext(_ctx, getState());
enterRule(_localctx, 56, RULE_statement);
try {
setState(431);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,29,_ctx) ) {
case 1:
enterOuterAlt(_localctx, 1);
{
setState(428);
expressionDefinition();
}
break;
case 2:
enterOuterAlt(_localctx, 2);
{
setState(429);
contextDefinition();
}
break;
case 3:
enterOuterAlt(_localctx, 3);
{
setState(430);
functionDefinition();
}
break;
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ExpressionDefinitionContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public AccessModifierContext accessModifier() {
return getRuleContext(AccessModifierContext.class,0);
}
public ExpressionDefinitionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_expressionDefinition; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterExpressionDefinition(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitExpressionDefinition(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitExpressionDefinition(this);
else return visitor.visitChildren(this);
}
}
public final ExpressionDefinitionContext expressionDefinition() throws RecognitionException {
ExpressionDefinitionContext _localctx = new ExpressionDefinitionContext(_ctx, getState());
enterRule(_localctx, 58, RULE_expressionDefinition);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(433);
match(T__26);
setState(435);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__5 || _la==T__6) {
{
setState(434);
accessModifier();
}
}
setState(437);
identifier();
setState(438);
match(T__10);
setState(439);
expression(0);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ContextDefinitionContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public ModelIdentifierContext modelIdentifier() {
return getRuleContext(ModelIdentifierContext.class,0);
}
public ContextDefinitionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_contextDefinition; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterContextDefinition(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitContextDefinition(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitContextDefinition(this);
else return visitor.visitChildren(this);
}
}
public final ContextDefinitionContext contextDefinition() throws RecognitionException {
ContextDefinitionContext _localctx = new ContextDefinitionContext(_ctx, getState());
enterRule(_localctx, 60, RULE_contextDefinition);
try {
enterOuterAlt(_localctx, 1);
{
setState(441);
match(T__27);
setState(445);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,31,_ctx) ) {
case 1:
{
setState(442);
modelIdentifier();
setState(443);
match(T__16);
}
break;
}
setState(447);
identifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class FluentModifierContext extends ParserRuleContext {
public FluentModifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_fluentModifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterFluentModifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitFluentModifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitFluentModifier(this);
else return visitor.visitChildren(this);
}
}
public final FluentModifierContext fluentModifier() throws RecognitionException {
FluentModifierContext _localctx = new FluentModifierContext(_ctx, getState());
enterRule(_localctx, 62, RULE_fluentModifier);
try {
enterOuterAlt(_localctx, 1);
{
setState(449);
match(T__28);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class FunctionDefinitionContext extends ParserRuleContext {
public IdentifierOrFunctionIdentifierContext identifierOrFunctionIdentifier() {
return getRuleContext(IdentifierOrFunctionIdentifierContext.class,0);
}
public FunctionBodyContext functionBody() {
return getRuleContext(FunctionBodyContext.class,0);
}
public AccessModifierContext accessModifier() {
return getRuleContext(AccessModifierContext.class,0);
}
public FluentModifierContext fluentModifier() {
return getRuleContext(FluentModifierContext.class,0);
}
public List operandDefinition() {
return getRuleContexts(OperandDefinitionContext.class);
}
public OperandDefinitionContext operandDefinition(int i) {
return getRuleContext(OperandDefinitionContext.class,i);
}
public TypeSpecifierContext typeSpecifier() {
return getRuleContext(TypeSpecifierContext.class,0);
}
public FunctionDefinitionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_functionDefinition; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterFunctionDefinition(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitFunctionDefinition(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitFunctionDefinition(this);
else return visitor.visitChildren(this);
}
}
public final FunctionDefinitionContext functionDefinition() throws RecognitionException {
FunctionDefinitionContext _localctx = new FunctionDefinitionContext(_ctx, getState());
enterRule(_localctx, 64, RULE_functionDefinition);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(451);
match(T__26);
setState(453);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__5 || _la==T__6) {
{
setState(452);
accessModifier();
}
}
setState(456);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__28) {
{
setState(455);
fluentModifier();
}
}
setState(458);
match(T__29);
setState(459);
identifierOrFunctionIdentifier();
setState(460);
match(T__30);
setState(469);
_errHandler.sync(this);
_la = _input.LA(1);
if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 140772674742007806L) != 0) || ((((_la - 74)) & ~0x3f) == 0 && ((1L << (_la - 74)) & 2161833627658158317L) != 0) || ((((_la - 141)) & ~0x3f) == 0 && ((1L << (_la - 141)) & 12722963L) != 0)) {
{
setState(461);
operandDefinition();
setState(466);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__14) {
{
{
setState(462);
match(T__14);
setState(463);
operandDefinition();
}
}
setState(468);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
}
setState(471);
match(T__31);
setState(474);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__32) {
{
setState(472);
match(T__32);
setState(473);
typeSpecifier();
}
}
setState(476);
match(T__10);
setState(479);
_errHandler.sync(this);
switch (_input.LA(1)) {
case T__0:
case T__1:
case T__2:
case T__3:
case T__4:
case T__5:
case T__6:
case T__7:
case T__8:
case T__9:
case T__11:
case T__12:
case T__13:
case T__17:
case T__18:
case T__19:
case T__20:
case T__23:
case T__24:
case T__26:
case T__27:
case T__28:
case T__29:
case T__30:
case T__37:
case T__44:
case T__47:
case T__49:
case T__51:
case T__52:
case T__53:
case T__54:
case T__55:
case T__57:
case T__58:
case T__59:
case T__60:
case T__62:
case T__63:
case T__67:
case T__68:
case T__73:
case T__75:
case T__76:
case T__78:
case T__79:
case T__80:
case T__81:
case T__82:
case T__83:
case T__84:
case T__85:
case T__86:
case T__87:
case T__88:
case T__89:
case T__90:
case T__91:
case T__92:
case T__93:
case T__94:
case T__95:
case T__96:
case T__97:
case T__98:
case T__99:
case T__100:
case T__101:
case T__103:
case T__104:
case T__105:
case T__106:
case T__108:
case T__109:
case T__110:
case T__111:
case T__112:
case T__113:
case T__114:
case T__118:
case T__119:
case T__121:
case T__124:
case T__125:
case T__126:
case T__127:
case T__130:
case T__131:
case T__132:
case T__133:
case T__140:
case T__141:
case T__144:
case T__148:
case T__149:
case T__150:
case T__151:
case T__152:
case T__153:
case T__154:
case T__155:
case T__156:
case QUOTEDIDENTIFIER:
case DATETIME:
case LONGNUMBER:
case DATE:
case TIME:
case IDENTIFIER:
case DELIMITEDIDENTIFIER:
case STRING:
case NUMBER:
{
setState(477);
functionBody();
}
break;
case T__33:
{
setState(478);
match(T__33);
}
break;
default:
throw new NoViableAltException(this);
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class OperandDefinitionContext extends ParserRuleContext {
public ReferentialIdentifierContext referentialIdentifier() {
return getRuleContext(ReferentialIdentifierContext.class,0);
}
public TypeSpecifierContext typeSpecifier() {
return getRuleContext(TypeSpecifierContext.class,0);
}
public OperandDefinitionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_operandDefinition; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterOperandDefinition(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitOperandDefinition(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitOperandDefinition(this);
else return visitor.visitChildren(this);
}
}
public final OperandDefinitionContext operandDefinition() throws RecognitionException {
OperandDefinitionContext _localctx = new OperandDefinitionContext(_ctx, getState());
enterRule(_localctx, 66, RULE_operandDefinition);
try {
enterOuterAlt(_localctx, 1);
{
setState(481);
referentialIdentifier();
setState(482);
typeSpecifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class FunctionBodyContext extends ParserRuleContext {
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public FunctionBodyContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_functionBody; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterFunctionBody(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitFunctionBody(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitFunctionBody(this);
else return visitor.visitChildren(this);
}
}
public final FunctionBodyContext functionBody() throws RecognitionException {
FunctionBodyContext _localctx = new FunctionBodyContext(_ctx, getState());
enterRule(_localctx, 68, RULE_functionBody);
try {
enterOuterAlt(_localctx, 1);
{
setState(484);
expression(0);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class QuerySourceContext extends ParserRuleContext {
public RetrieveContext retrieve() {
return getRuleContext(RetrieveContext.class,0);
}
public QualifiedIdentifierExpressionContext qualifiedIdentifierExpression() {
return getRuleContext(QualifiedIdentifierExpressionContext.class,0);
}
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public QuerySourceContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_querySource; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterQuerySource(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitQuerySource(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitQuerySource(this);
else return visitor.visitChildren(this);
}
}
public final QuerySourceContext querySource() throws RecognitionException {
QuerySourceContext _localctx = new QuerySourceContext(_ctx, getState());
enterRule(_localctx, 70, RULE_querySource);
try {
setState(492);
_errHandler.sync(this);
switch (_input.LA(1)) {
case T__37:
enterOuterAlt(_localctx, 1);
{
setState(486);
retrieve();
}
break;
case T__0:
case T__1:
case T__2:
case T__3:
case T__4:
case T__5:
case T__6:
case T__7:
case T__8:
case T__9:
case T__11:
case T__12:
case T__17:
case T__19:
case T__26:
case T__27:
case T__28:
case T__29:
case T__44:
case T__49:
case T__51:
case T__52:
case T__53:
case T__54:
case T__55:
case T__73:
case T__75:
case T__76:
case T__78:
case T__79:
case T__80:
case T__89:
case T__90:
case T__91:
case T__92:
case T__105:
case T__106:
case T__108:
case T__109:
case T__110:
case T__118:
case T__119:
case T__130:
case T__131:
case T__132:
case T__133:
case T__140:
case T__141:
case T__144:
case T__148:
case T__149:
case T__153:
case QUOTEDIDENTIFIER:
case IDENTIFIER:
case DELIMITEDIDENTIFIER:
enterOuterAlt(_localctx, 2);
{
setState(487);
qualifiedIdentifierExpression();
}
break;
case T__30:
enterOuterAlt(_localctx, 3);
{
setState(488);
match(T__30);
setState(489);
expression(0);
setState(490);
match(T__31);
}
break;
default:
throw new NoViableAltException(this);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class AliasedQuerySourceContext extends ParserRuleContext {
public QuerySourceContext querySource() {
return getRuleContext(QuerySourceContext.class,0);
}
public AliasContext alias() {
return getRuleContext(AliasContext.class,0);
}
public AliasedQuerySourceContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_aliasedQuerySource; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterAliasedQuerySource(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitAliasedQuerySource(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitAliasedQuerySource(this);
else return visitor.visitChildren(this);
}
}
public final AliasedQuerySourceContext aliasedQuerySource() throws RecognitionException {
AliasedQuerySourceContext _localctx = new AliasedQuerySourceContext(_ctx, getState());
enterRule(_localctx, 72, RULE_aliasedQuerySource);
try {
enterOuterAlt(_localctx, 1);
{
setState(494);
querySource();
setState(495);
alias();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class AliasContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public AliasContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_alias; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterAlias(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitAlias(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitAlias(this);
else return visitor.visitChildren(this);
}
}
public final AliasContext alias() throws RecognitionException {
AliasContext _localctx = new AliasContext(_ctx, getState());
enterRule(_localctx, 74, RULE_alias);
try {
enterOuterAlt(_localctx, 1);
{
setState(497);
identifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class QueryInclusionClauseContext extends ParserRuleContext {
public WithClauseContext withClause() {
return getRuleContext(WithClauseContext.class,0);
}
public WithoutClauseContext withoutClause() {
return getRuleContext(WithoutClauseContext.class,0);
}
public QueryInclusionClauseContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_queryInclusionClause; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterQueryInclusionClause(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitQueryInclusionClause(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitQueryInclusionClause(this);
else return visitor.visitChildren(this);
}
}
public final QueryInclusionClauseContext queryInclusionClause() throws RecognitionException {
QueryInclusionClauseContext _localctx = new QueryInclusionClauseContext(_ctx, getState());
enterRule(_localctx, 76, RULE_queryInclusionClause);
try {
setState(501);
_errHandler.sync(this);
switch (_input.LA(1)) {
case T__34:
enterOuterAlt(_localctx, 1);
{
setState(499);
withClause();
}
break;
case T__36:
enterOuterAlt(_localctx, 2);
{
setState(500);
withoutClause();
}
break;
default:
throw new NoViableAltException(this);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class WithClauseContext extends ParserRuleContext {
public AliasedQuerySourceContext aliasedQuerySource() {
return getRuleContext(AliasedQuerySourceContext.class,0);
}
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public WithClauseContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_withClause; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterWithClause(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitWithClause(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitWithClause(this);
else return visitor.visitChildren(this);
}
}
public final WithClauseContext withClause() throws RecognitionException {
WithClauseContext _localctx = new WithClauseContext(_ctx, getState());
enterRule(_localctx, 78, RULE_withClause);
try {
enterOuterAlt(_localctx, 1);
{
setState(503);
match(T__34);
setState(504);
aliasedQuerySource();
setState(505);
match(T__35);
setState(506);
expression(0);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class WithoutClauseContext extends ParserRuleContext {
public AliasedQuerySourceContext aliasedQuerySource() {
return getRuleContext(AliasedQuerySourceContext.class,0);
}
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public WithoutClauseContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_withoutClause; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterWithoutClause(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitWithoutClause(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitWithoutClause(this);
else return visitor.visitChildren(this);
}
}
public final WithoutClauseContext withoutClause() throws RecognitionException {
WithoutClauseContext _localctx = new WithoutClauseContext(_ctx, getState());
enterRule(_localctx, 80, RULE_withoutClause);
try {
enterOuterAlt(_localctx, 1);
{
setState(508);
match(T__36);
setState(509);
aliasedQuerySource();
setState(510);
match(T__35);
setState(511);
expression(0);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class RetrieveContext extends ParserRuleContext {
public NamedTypeSpecifierContext namedTypeSpecifier() {
return getRuleContext(NamedTypeSpecifierContext.class,0);
}
public ContextIdentifierContext contextIdentifier() {
return getRuleContext(ContextIdentifierContext.class,0);
}
public TerminologyContext terminology() {
return getRuleContext(TerminologyContext.class,0);
}
public CodePathContext codePath() {
return getRuleContext(CodePathContext.class,0);
}
public CodeComparatorContext codeComparator() {
return getRuleContext(CodeComparatorContext.class,0);
}
public RetrieveContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_retrieve; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterRetrieve(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitRetrieve(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitRetrieve(this);
else return visitor.visitChildren(this);
}
}
public final RetrieveContext retrieve() throws RecognitionException {
RetrieveContext _localctx = new RetrieveContext(_ctx, getState());
enterRule(_localctx, 82, RULE_retrieve);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(513);
match(T__37);
setState(517);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,40,_ctx) ) {
case 1:
{
setState(514);
contextIdentifier();
setState(515);
match(T__38);
}
break;
}
setState(519);
namedTypeSpecifier();
setState(527);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__10) {
{
setState(520);
match(T__10);
setState(524);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,41,_ctx) ) {
case 1:
{
setState(521);
codePath();
setState(522);
codeComparator();
}
break;
}
setState(526);
terminology();
}
}
setState(529);
match(T__39);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ContextIdentifierContext extends ParserRuleContext {
public QualifiedIdentifierExpressionContext qualifiedIdentifierExpression() {
return getRuleContext(QualifiedIdentifierExpressionContext.class,0);
}
public ContextIdentifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_contextIdentifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterContextIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitContextIdentifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitContextIdentifier(this);
else return visitor.visitChildren(this);
}
}
public final ContextIdentifierContext contextIdentifier() throws RecognitionException {
ContextIdentifierContext _localctx = new ContextIdentifierContext(_ctx, getState());
enterRule(_localctx, 84, RULE_contextIdentifier);
try {
enterOuterAlt(_localctx, 1);
{
setState(531);
qualifiedIdentifierExpression();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class CodePathContext extends ParserRuleContext {
public SimplePathContext simplePath() {
return getRuleContext(SimplePathContext.class,0);
}
public CodePathContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_codePath; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterCodePath(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitCodePath(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitCodePath(this);
else return visitor.visitChildren(this);
}
}
public final CodePathContext codePath() throws RecognitionException {
CodePathContext _localctx = new CodePathContext(_ctx, getState());
enterRule(_localctx, 86, RULE_codePath);
try {
enterOuterAlt(_localctx, 1);
{
setState(533);
simplePath(0);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class CodeComparatorContext extends ParserRuleContext {
public CodeComparatorContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_codeComparator; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterCodeComparator(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitCodeComparator(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitCodeComparator(this);
else return visitor.visitChildren(this);
}
}
public final CodeComparatorContext codeComparator() throws RecognitionException {
CodeComparatorContext _localctx = new CodeComparatorContext(_ctx, getState());
enterRule(_localctx, 88, RULE_codeComparator);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(535);
_la = _input.LA(1);
if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & 15393162788864L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class TerminologyContext extends ParserRuleContext {
public QualifiedIdentifierExpressionContext qualifiedIdentifierExpression() {
return getRuleContext(QualifiedIdentifierExpressionContext.class,0);
}
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public TerminologyContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_terminology; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTerminology(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTerminology(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTerminology(this);
else return visitor.visitChildren(this);
}
}
public final TerminologyContext terminology() throws RecognitionException {
TerminologyContext _localctx = new TerminologyContext(_ctx, getState());
enterRule(_localctx, 90, RULE_terminology);
try {
setState(539);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,43,_ctx) ) {
case 1:
enterOuterAlt(_localctx, 1);
{
setState(537);
qualifiedIdentifierExpression();
}
break;
case 2:
enterOuterAlt(_localctx, 2);
{
setState(538);
expression(0);
}
break;
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class QualifierContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public QualifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_qualifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterQualifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitQualifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitQualifier(this);
else return visitor.visitChildren(this);
}
}
public final QualifierContext qualifier() throws RecognitionException {
QualifierContext _localctx = new QualifierContext(_ctx, getState());
enterRule(_localctx, 92, RULE_qualifier);
try {
enterOuterAlt(_localctx, 1);
{
setState(541);
identifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class QueryContext extends ParserRuleContext {
public SourceClauseContext sourceClause() {
return getRuleContext(SourceClauseContext.class,0);
}
public LetClauseContext letClause() {
return getRuleContext(LetClauseContext.class,0);
}
public List queryInclusionClause() {
return getRuleContexts(QueryInclusionClauseContext.class);
}
public QueryInclusionClauseContext queryInclusionClause(int i) {
return getRuleContext(QueryInclusionClauseContext.class,i);
}
public WhereClauseContext whereClause() {
return getRuleContext(WhereClauseContext.class,0);
}
public AggregateClauseContext aggregateClause() {
return getRuleContext(AggregateClauseContext.class,0);
}
public ReturnClauseContext returnClause() {
return getRuleContext(ReturnClauseContext.class,0);
}
public SortClauseContext sortClause() {
return getRuleContext(SortClauseContext.class,0);
}
public QueryContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_query; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterQuery(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitQuery(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitQuery(this);
else return visitor.visitChildren(this);
}
}
public final QueryContext query() throws RecognitionException {
QueryContext _localctx = new QueryContext(_ctx, getState());
enterRule(_localctx, 94, RULE_query);
try {
int _alt;
enterOuterAlt(_localctx, 1);
{
setState(543);
sourceClause();
setState(545);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,44,_ctx) ) {
case 1:
{
setState(544);
letClause();
}
break;
}
setState(550);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,45,_ctx);
while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
if ( _alt==1 ) {
{
{
setState(547);
queryInclusionClause();
}
}
}
setState(552);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,45,_ctx);
}
setState(554);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,46,_ctx) ) {
case 1:
{
setState(553);
whereClause();
}
break;
}
setState(558);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,47,_ctx) ) {
case 1:
{
setState(556);
aggregateClause();
}
break;
case 2:
{
setState(557);
returnClause();
}
break;
}
setState(561);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,48,_ctx) ) {
case 1:
{
setState(560);
sortClause();
}
break;
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class SourceClauseContext extends ParserRuleContext {
public List aliasedQuerySource() {
return getRuleContexts(AliasedQuerySourceContext.class);
}
public AliasedQuerySourceContext aliasedQuerySource(int i) {
return getRuleContext(AliasedQuerySourceContext.class,i);
}
public SourceClauseContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sourceClause; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterSourceClause(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitSourceClause(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitSourceClause(this);
else return visitor.visitChildren(this);
}
}
public final SourceClauseContext sourceClause() throws RecognitionException {
SourceClauseContext _localctx = new SourceClauseContext(_ctx, getState());
enterRule(_localctx, 96, RULE_sourceClause);
int _la;
try {
int _alt;
enterOuterAlt(_localctx, 1);
{
setState(564);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__18) {
{
setState(563);
match(T__18);
}
}
setState(566);
aliasedQuerySource();
setState(571);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,50,_ctx);
while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
if ( _alt==1 ) {
{
{
setState(567);
match(T__14);
setState(568);
aliasedQuerySource();
}
}
}
setState(573);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,50,_ctx);
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class LetClauseContext extends ParserRuleContext {
public List letClauseItem() {
return getRuleContexts(LetClauseItemContext.class);
}
public LetClauseItemContext letClauseItem(int i) {
return getRuleContext(LetClauseItemContext.class,i);
}
public LetClauseContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_letClause; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterLetClause(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitLetClause(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitLetClause(this);
else return visitor.visitChildren(this);
}
}
public final LetClauseContext letClause() throws RecognitionException {
LetClauseContext _localctx = new LetClauseContext(_ctx, getState());
enterRule(_localctx, 98, RULE_letClause);
try {
int _alt;
enterOuterAlt(_localctx, 1);
{
setState(574);
match(T__43);
setState(575);
letClauseItem();
setState(580);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,51,_ctx);
while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
if ( _alt==1 ) {
{
{
setState(576);
match(T__14);
setState(577);
letClauseItem();
}
}
}
setState(582);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,51,_ctx);
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class LetClauseItemContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public LetClauseItemContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_letClauseItem; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterLetClauseItem(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitLetClauseItem(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitLetClauseItem(this);
else return visitor.visitChildren(this);
}
}
public final LetClauseItemContext letClauseItem() throws RecognitionException {
LetClauseItemContext _localctx = new LetClauseItemContext(_ctx, getState());
enterRule(_localctx, 100, RULE_letClauseItem);
try {
enterOuterAlt(_localctx, 1);
{
setState(583);
identifier();
setState(584);
match(T__10);
setState(585);
expression(0);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class WhereClauseContext extends ParserRuleContext {
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public WhereClauseContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_whereClause; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterWhereClause(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitWhereClause(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitWhereClause(this);
else return visitor.visitChildren(this);
}
}
public final WhereClauseContext whereClause() throws RecognitionException {
WhereClauseContext _localctx = new WhereClauseContext(_ctx, getState());
enterRule(_localctx, 102, RULE_whereClause);
try {
enterOuterAlt(_localctx, 1);
{
setState(587);
match(T__44);
setState(588);
expression(0);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ReturnClauseContext extends ParserRuleContext {
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public ReturnClauseContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_returnClause; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterReturnClause(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitReturnClause(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitReturnClause(this);
else return visitor.visitChildren(this);
}
}
public final ReturnClauseContext returnClause() throws RecognitionException {
ReturnClauseContext _localctx = new ReturnClauseContext(_ctx, getState());
enterRule(_localctx, 104, RULE_returnClause);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(590);
match(T__45);
setState(592);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,52,_ctx) ) {
case 1:
{
setState(591);
_la = _input.LA(1);
if ( !(_la==T__46 || _la==T__47) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
break;
}
setState(594);
expression(0);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class AggregateClauseContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public StartingClauseContext startingClause() {
return getRuleContext(StartingClauseContext.class,0);
}
public AggregateClauseContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_aggregateClause; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterAggregateClause(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitAggregateClause(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitAggregateClause(this);
else return visitor.visitChildren(this);
}
}
public final AggregateClauseContext aggregateClause() throws RecognitionException {
AggregateClauseContext _localctx = new AggregateClauseContext(_ctx, getState());
enterRule(_localctx, 106, RULE_aggregateClause);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(596);
match(T__48);
setState(598);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__46 || _la==T__47) {
{
setState(597);
_la = _input.LA(1);
if ( !(_la==T__46 || _la==T__47) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(600);
identifier();
setState(602);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__49) {
{
setState(601);
startingClause();
}
}
setState(604);
match(T__10);
setState(605);
expression(0);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class StartingClauseContext extends ParserRuleContext {
public SimpleLiteralContext simpleLiteral() {
return getRuleContext(SimpleLiteralContext.class,0);
}
public QuantityContext quantity() {
return getRuleContext(QuantityContext.class,0);
}
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public StartingClauseContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_startingClause; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterStartingClause(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitStartingClause(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitStartingClause(this);
else return visitor.visitChildren(this);
}
}
public final StartingClauseContext startingClause() throws RecognitionException {
StartingClauseContext _localctx = new StartingClauseContext(_ctx, getState());
enterRule(_localctx, 108, RULE_startingClause);
try {
enterOuterAlt(_localctx, 1);
{
setState(607);
match(T__49);
setState(614);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,55,_ctx) ) {
case 1:
{
setState(608);
simpleLiteral();
}
break;
case 2:
{
setState(609);
quantity();
}
break;
case 3:
{
{
setState(610);
match(T__30);
setState(611);
expression(0);
setState(612);
match(T__31);
}
}
break;
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class SortClauseContext extends ParserRuleContext {
public SortDirectionContext sortDirection() {
return getRuleContext(SortDirectionContext.class,0);
}
public List sortByItem() {
return getRuleContexts(SortByItemContext.class);
}
public SortByItemContext sortByItem(int i) {
return getRuleContext(SortByItemContext.class,i);
}
public SortClauseContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sortClause; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterSortClause(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitSortClause(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitSortClause(this);
else return visitor.visitChildren(this);
}
}
public final SortClauseContext sortClause() throws RecognitionException {
SortClauseContext _localctx = new SortClauseContext(_ctx, getState());
enterRule(_localctx, 110, RULE_sortClause);
try {
int _alt;
enterOuterAlt(_localctx, 1);
{
setState(616);
match(T__50);
setState(627);
_errHandler.sync(this);
switch (_input.LA(1)) {
case T__52:
case T__53:
case T__54:
case T__55:
{
setState(617);
sortDirection();
}
break;
case T__51:
{
{
setState(618);
match(T__51);
setState(619);
sortByItem();
setState(624);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,56,_ctx);
while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
if ( _alt==1 ) {
{
{
setState(620);
match(T__14);
setState(621);
sortByItem();
}
}
}
setState(626);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,56,_ctx);
}
}
}
break;
default:
throw new NoViableAltException(this);
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class SortDirectionContext extends ParserRuleContext {
public SortDirectionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sortDirection; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterSortDirection(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitSortDirection(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitSortDirection(this);
else return visitor.visitChildren(this);
}
}
public final SortDirectionContext sortDirection() throws RecognitionException {
SortDirectionContext _localctx = new SortDirectionContext(_ctx, getState());
enterRule(_localctx, 112, RULE_sortDirection);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(629);
_la = _input.LA(1);
if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & 135107988821114880L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class SortByItemContext extends ParserRuleContext {
public ExpressionTermContext expressionTerm() {
return getRuleContext(ExpressionTermContext.class,0);
}
public SortDirectionContext sortDirection() {
return getRuleContext(SortDirectionContext.class,0);
}
public SortByItemContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sortByItem; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterSortByItem(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitSortByItem(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitSortByItem(this);
else return visitor.visitChildren(this);
}
}
public final SortByItemContext sortByItem() throws RecognitionException {
SortByItemContext _localctx = new SortByItemContext(_ctx, getState());
enterRule(_localctx, 114, RULE_sortByItem);
try {
enterOuterAlt(_localctx, 1);
{
setState(631);
expressionTerm(0);
setState(633);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,58,_ctx) ) {
case 1:
{
setState(632);
sortDirection();
}
break;
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class QualifiedIdentifierContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public List qualifier() {
return getRuleContexts(QualifierContext.class);
}
public QualifierContext qualifier(int i) {
return getRuleContext(QualifierContext.class,i);
}
public QualifiedIdentifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_qualifiedIdentifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterQualifiedIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitQualifiedIdentifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitQualifiedIdentifier(this);
else return visitor.visitChildren(this);
}
}
public final QualifiedIdentifierContext qualifiedIdentifier() throws RecognitionException {
QualifiedIdentifierContext _localctx = new QualifiedIdentifierContext(_ctx, getState());
enterRule(_localctx, 116, RULE_qualifiedIdentifier);
try {
int _alt;
enterOuterAlt(_localctx, 1);
{
setState(640);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,59,_ctx);
while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
if ( _alt==1 ) {
{
{
setState(635);
qualifier();
setState(636);
match(T__16);
}
}
}
setState(642);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,59,_ctx);
}
setState(643);
identifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class QualifiedIdentifierExpressionContext extends ParserRuleContext {
public ReferentialIdentifierContext referentialIdentifier() {
return getRuleContext(ReferentialIdentifierContext.class,0);
}
public List qualifierExpression() {
return getRuleContexts(QualifierExpressionContext.class);
}
public QualifierExpressionContext qualifierExpression(int i) {
return getRuleContext(QualifierExpressionContext.class,i);
}
public QualifiedIdentifierExpressionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_qualifiedIdentifierExpression; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterQualifiedIdentifierExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitQualifiedIdentifierExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitQualifiedIdentifierExpression(this);
else return visitor.visitChildren(this);
}
}
public final QualifiedIdentifierExpressionContext qualifiedIdentifierExpression() throws RecognitionException {
QualifiedIdentifierExpressionContext _localctx = new QualifiedIdentifierExpressionContext(_ctx, getState());
enterRule(_localctx, 118, RULE_qualifiedIdentifierExpression);
try {
int _alt;
enterOuterAlt(_localctx, 1);
{
setState(650);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,60,_ctx);
while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
if ( _alt==1 ) {
{
{
setState(645);
qualifierExpression();
setState(646);
match(T__16);
}
}
}
setState(652);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,60,_ctx);
}
setState(653);
referentialIdentifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class QualifierExpressionContext extends ParserRuleContext {
public ReferentialIdentifierContext referentialIdentifier() {
return getRuleContext(ReferentialIdentifierContext.class,0);
}
public QualifierExpressionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_qualifierExpression; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterQualifierExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitQualifierExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitQualifierExpression(this);
else return visitor.visitChildren(this);
}
}
public final QualifierExpressionContext qualifierExpression() throws RecognitionException {
QualifierExpressionContext _localctx = new QualifierExpressionContext(_ctx, getState());
enterRule(_localctx, 120, RULE_qualifierExpression);
try {
enterOuterAlt(_localctx, 1);
{
setState(655);
referentialIdentifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class SimplePathContext extends ParserRuleContext {
public SimplePathContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_simplePath; }
public SimplePathContext() { }
public void copyFrom(SimplePathContext ctx) {
super.copyFrom(ctx);
}
}
@SuppressWarnings("CheckReturnValue")
public static class SimplePathIndexerContext extends SimplePathContext {
public SimplePathContext simplePath() {
return getRuleContext(SimplePathContext.class,0);
}
public SimpleLiteralContext simpleLiteral() {
return getRuleContext(SimpleLiteralContext.class,0);
}
public SimplePathIndexerContext(SimplePathContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterSimplePathIndexer(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitSimplePathIndexer(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitSimplePathIndexer(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class SimplePathQualifiedIdentifierContext extends SimplePathContext {
public SimplePathContext simplePath() {
return getRuleContext(SimplePathContext.class,0);
}
public ReferentialIdentifierContext referentialIdentifier() {
return getRuleContext(ReferentialIdentifierContext.class,0);
}
public SimplePathQualifiedIdentifierContext(SimplePathContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterSimplePathQualifiedIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitSimplePathQualifiedIdentifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitSimplePathQualifiedIdentifier(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class SimplePathReferentialIdentifierContext extends SimplePathContext {
public ReferentialIdentifierContext referentialIdentifier() {
return getRuleContext(ReferentialIdentifierContext.class,0);
}
public SimplePathReferentialIdentifierContext(SimplePathContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterSimplePathReferentialIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitSimplePathReferentialIdentifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitSimplePathReferentialIdentifier(this);
else return visitor.visitChildren(this);
}
}
public final SimplePathContext simplePath() throws RecognitionException {
return simplePath(0);
}
private SimplePathContext simplePath(int _p) throws RecognitionException {
ParserRuleContext _parentctx = _ctx;
int _parentState = getState();
SimplePathContext _localctx = new SimplePathContext(_ctx, _parentState);
SimplePathContext _prevctx = _localctx;
int _startState = 122;
enterRecursionRule(_localctx, 122, RULE_simplePath, _p);
try {
int _alt;
enterOuterAlt(_localctx, 1);
{
{
_localctx = new SimplePathReferentialIdentifierContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(658);
referentialIdentifier();
}
_ctx.stop = _input.LT(-1);
setState(670);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,62,_ctx);
while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
if ( _alt==1 ) {
if ( _parseListeners!=null ) triggerExitRuleEvent();
_prevctx = _localctx;
{
setState(668);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,61,_ctx) ) {
case 1:
{
_localctx = new SimplePathQualifiedIdentifierContext(new SimplePathContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_simplePath);
setState(660);
if (!(precpred(_ctx, 2))) throw new FailedPredicateException(this, "precpred(_ctx, 2)");
setState(661);
match(T__16);
setState(662);
referentialIdentifier();
}
break;
case 2:
{
_localctx = new SimplePathIndexerContext(new SimplePathContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_simplePath);
setState(663);
if (!(precpred(_ctx, 1))) throw new FailedPredicateException(this, "precpred(_ctx, 1)");
setState(664);
match(T__37);
setState(665);
simpleLiteral();
setState(666);
match(T__39);
}
break;
}
}
}
setState(672);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,62,_ctx);
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
unrollRecursionContexts(_parentctx);
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class SimpleLiteralContext extends ParserRuleContext {
public SimpleLiteralContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_simpleLiteral; }
public SimpleLiteralContext() { }
public void copyFrom(SimpleLiteralContext ctx) {
super.copyFrom(ctx);
}
}
@SuppressWarnings("CheckReturnValue")
public static class SimpleNumberLiteralContext extends SimpleLiteralContext {
public TerminalNode NUMBER() { return getToken(cqlParser.NUMBER, 0); }
public SimpleNumberLiteralContext(SimpleLiteralContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterSimpleNumberLiteral(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitSimpleNumberLiteral(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitSimpleNumberLiteral(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class SimpleStringLiteralContext extends SimpleLiteralContext {
public TerminalNode STRING() { return getToken(cqlParser.STRING, 0); }
public SimpleStringLiteralContext(SimpleLiteralContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterSimpleStringLiteral(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitSimpleStringLiteral(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitSimpleStringLiteral(this);
else return visitor.visitChildren(this);
}
}
public final SimpleLiteralContext simpleLiteral() throws RecognitionException {
SimpleLiteralContext _localctx = new SimpleLiteralContext(_ctx, getState());
enterRule(_localctx, 124, RULE_simpleLiteral);
try {
setState(675);
_errHandler.sync(this);
switch (_input.LA(1)) {
case STRING:
_localctx = new SimpleStringLiteralContext(_localctx);
enterOuterAlt(_localctx, 1);
{
setState(673);
match(STRING);
}
break;
case NUMBER:
_localctx = new SimpleNumberLiteralContext(_localctx);
enterOuterAlt(_localctx, 2);
{
setState(674);
match(NUMBER);
}
break;
default:
throw new NoViableAltException(this);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ExpressionContext extends ParserRuleContext {
public ExpressionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_expression; }
public ExpressionContext() { }
public void copyFrom(ExpressionContext ctx) {
super.copyFrom(ctx);
}
}
@SuppressWarnings("CheckReturnValue")
public static class DurationBetweenExpressionContext extends ExpressionContext {
public PluralDateTimePrecisionContext pluralDateTimePrecision() {
return getRuleContext(PluralDateTimePrecisionContext.class,0);
}
public List expressionTerm() {
return getRuleContexts(ExpressionTermContext.class);
}
public ExpressionTermContext expressionTerm(int i) {
return getRuleContext(ExpressionTermContext.class,i);
}
public DurationBetweenExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterDurationBetweenExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitDurationBetweenExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitDurationBetweenExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class InFixSetExpressionContext extends ExpressionContext {
public List expression() {
return getRuleContexts(ExpressionContext.class);
}
public ExpressionContext expression(int i) {
return getRuleContext(ExpressionContext.class,i);
}
public InFixSetExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterInFixSetExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitInFixSetExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitInFixSetExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class RetrieveExpressionContext extends ExpressionContext {
public RetrieveContext retrieve() {
return getRuleContext(RetrieveContext.class,0);
}
public RetrieveExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterRetrieveExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitRetrieveExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitRetrieveExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class TimingExpressionContext extends ExpressionContext {
public List expression() {
return getRuleContexts(ExpressionContext.class);
}
public ExpressionContext expression(int i) {
return getRuleContext(ExpressionContext.class,i);
}
public IntervalOperatorPhraseContext intervalOperatorPhrase() {
return getRuleContext(IntervalOperatorPhraseContext.class,0);
}
public TimingExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTimingExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTimingExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTimingExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class QueryExpressionContext extends ExpressionContext {
public QueryContext query() {
return getRuleContext(QueryContext.class,0);
}
public QueryExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterQueryExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitQueryExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitQueryExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class NotExpressionContext extends ExpressionContext {
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public NotExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterNotExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitNotExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitNotExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class BooleanExpressionContext extends ExpressionContext {
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public BooleanExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterBooleanExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitBooleanExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitBooleanExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class OrExpressionContext extends ExpressionContext {
public List expression() {
return getRuleContexts(ExpressionContext.class);
}
public ExpressionContext expression(int i) {
return getRuleContext(ExpressionContext.class,i);
}
public OrExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterOrExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitOrExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitOrExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class CastExpressionContext extends ExpressionContext {
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public TypeSpecifierContext typeSpecifier() {
return getRuleContext(TypeSpecifierContext.class,0);
}
public CastExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterCastExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitCastExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitCastExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class AndExpressionContext extends ExpressionContext {
public List expression() {
return getRuleContexts(ExpressionContext.class);
}
public ExpressionContext expression(int i) {
return getRuleContext(ExpressionContext.class,i);
}
public AndExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterAndExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitAndExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitAndExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class BetweenExpressionContext extends ExpressionContext {
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public List expressionTerm() {
return getRuleContexts(ExpressionTermContext.class);
}
public ExpressionTermContext expressionTerm(int i) {
return getRuleContext(ExpressionTermContext.class,i);
}
public BetweenExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterBetweenExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitBetweenExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitBetweenExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class MembershipExpressionContext extends ExpressionContext {
public List expression() {
return getRuleContexts(ExpressionContext.class);
}
public ExpressionContext expression(int i) {
return getRuleContext(ExpressionContext.class,i);
}
public DateTimePrecisionSpecifierContext dateTimePrecisionSpecifier() {
return getRuleContext(DateTimePrecisionSpecifierContext.class,0);
}
public MembershipExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterMembershipExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitMembershipExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitMembershipExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class DifferenceBetweenExpressionContext extends ExpressionContext {
public PluralDateTimePrecisionContext pluralDateTimePrecision() {
return getRuleContext(PluralDateTimePrecisionContext.class,0);
}
public List expressionTerm() {
return getRuleContexts(ExpressionTermContext.class);
}
public ExpressionTermContext expressionTerm(int i) {
return getRuleContext(ExpressionTermContext.class,i);
}
public DifferenceBetweenExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterDifferenceBetweenExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitDifferenceBetweenExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitDifferenceBetweenExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class InequalityExpressionContext extends ExpressionContext {
public List expression() {
return getRuleContexts(ExpressionContext.class);
}
public ExpressionContext expression(int i) {
return getRuleContext(ExpressionContext.class,i);
}
public InequalityExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterInequalityExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitInequalityExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitInequalityExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class EqualityExpressionContext extends ExpressionContext {
public List expression() {
return getRuleContexts(ExpressionContext.class);
}
public ExpressionContext expression(int i) {
return getRuleContext(ExpressionContext.class,i);
}
public EqualityExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterEqualityExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitEqualityExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitEqualityExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class ExistenceExpressionContext extends ExpressionContext {
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public ExistenceExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterExistenceExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitExistenceExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitExistenceExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class ImpliesExpressionContext extends ExpressionContext {
public List expression() {
return getRuleContexts(ExpressionContext.class);
}
public ExpressionContext expression(int i) {
return getRuleContext(ExpressionContext.class,i);
}
public ImpliesExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterImpliesExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitImpliesExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitImpliesExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class TermExpressionContext extends ExpressionContext {
public ExpressionTermContext expressionTerm() {
return getRuleContext(ExpressionTermContext.class,0);
}
public TermExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTermExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTermExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTermExpression(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class TypeExpressionContext extends ExpressionContext {
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public TypeSpecifierContext typeSpecifier() {
return getRuleContext(TypeSpecifierContext.class,0);
}
public TypeExpressionContext(ExpressionContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTypeExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTypeExpression(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTypeExpression(this);
else return visitor.visitChildren(this);
}
}
public final ExpressionContext expression() throws RecognitionException {
return expression(0);
}
private ExpressionContext expression(int _p) throws RecognitionException {
ParserRuleContext _parentctx = _ctx;
int _parentState = getState();
ExpressionContext _localctx = new ExpressionContext(_ctx, _parentState);
ExpressionContext _prevctx = _localctx;
int _startState = 126;
enterRecursionRule(_localctx, 126, RULE_expression, _p);
int _la;
try {
int _alt;
enterOuterAlt(_localctx, 1);
{
setState(708);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,65,_ctx) ) {
case 1:
{
_localctx = new TermExpressionContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(678);
expressionTerm(0);
}
break;
case 2:
{
_localctx = new RetrieveExpressionContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(679);
retrieve();
}
break;
case 3:
{
_localctx = new QueryExpressionContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(680);
query();
}
break;
case 4:
{
_localctx = new CastExpressionContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(681);
match(T__62);
setState(682);
expression(0);
setState(683);
match(T__61);
setState(684);
typeSpecifier();
}
break;
case 5:
{
_localctx = new NotExpressionContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(686);
match(T__57);
setState(687);
expression(13);
}
break;
case 6:
{
_localctx = new ExistenceExpressionContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(688);
match(T__63);
setState(689);
expression(12);
}
break;
case 7:
{
_localctx = new DurationBetweenExpressionContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(692);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__67) {
{
setState(690);
match(T__67);
setState(691);
match(T__40);
}
}
setState(694);
pluralDateTimePrecision();
setState(695);
match(T__65);
setState(696);
expressionTerm(0);
setState(697);
match(T__66);
setState(698);
expressionTerm(0);
}
break;
case 8:
{
_localctx = new DifferenceBetweenExpressionContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(700);
match(T__68);
setState(701);
match(T__40);
setState(702);
pluralDateTimePrecision();
setState(703);
match(T__65);
setState(704);
expressionTerm(0);
setState(705);
match(T__66);
setState(706);
expressionTerm(0);
}
break;
}
_ctx.stop = _input.LT(-1);
setState(758);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,70,_ctx);
while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
if ( _alt==1 ) {
if ( _parseListeners!=null ) triggerExitRuleEvent();
_prevctx = _localctx;
{
setState(756);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,69,_ctx) ) {
case 1:
{
_localctx = new InequalityExpressionContext(new ExpressionContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_expression);
setState(710);
if (!(precpred(_ctx, 8))) throw new FailedPredicateException(this, "precpred(_ctx, 8)");
setState(711);
_la = _input.LA(1);
if ( !(((((_la - 22)) & ~0x3f) == 0 && ((1L << (_la - 22)) & 844424930131971L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(712);
expression(9);
}
break;
case 2:
{
_localctx = new TimingExpressionContext(new ExpressionContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_expression);
setState(713);
if (!(precpred(_ctx, 7))) throw new FailedPredicateException(this, "precpred(_ctx, 7)");
setState(714);
intervalOperatorPhrase();
setState(715);
expression(8);
}
break;
case 3:
{
_localctx = new EqualityExpressionContext(new ExpressionContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_expression);
setState(717);
if (!(precpred(_ctx, 6))) throw new FailedPredicateException(this, "precpred(_ctx, 6)");
setState(718);
_la = _input.LA(1);
if ( !(((((_la - 42)) & ~0x3f) == 0 && ((1L << (_la - 42)) & 3221225475L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(719);
expression(7);
}
break;
case 4:
{
_localctx = new MembershipExpressionContext(new ExpressionContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_expression);
setState(720);
if (!(precpred(_ctx, 5))) throw new FailedPredicateException(this, "precpred(_ctx, 5)");
setState(721);
_la = _input.LA(1);
if ( !(_la==T__40 || _la==T__73) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(723);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,66,_ctx) ) {
case 1:
{
setState(722);
dateTimePrecisionSpecifier();
}
break;
}
setState(725);
expression(6);
}
break;
case 5:
{
_localctx = new AndExpressionContext(new ExpressionContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_expression);
setState(726);
if (!(precpred(_ctx, 4))) throw new FailedPredicateException(this, "precpred(_ctx, 4)");
setState(727);
match(T__66);
setState(728);
expression(5);
}
break;
case 6:
{
_localctx = new OrExpressionContext(new ExpressionContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_expression);
setState(729);
if (!(precpred(_ctx, 3))) throw new FailedPredicateException(this, "precpred(_ctx, 3)");
setState(730);
_la = _input.LA(1);
if ( !(_la==T__74 || _la==T__75) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(731);
expression(4);
}
break;
case 7:
{
_localctx = new ImpliesExpressionContext(new ExpressionContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_expression);
setState(732);
if (!(precpred(_ctx, 2))) throw new FailedPredicateException(this, "precpred(_ctx, 2)");
setState(733);
match(T__76);
setState(734);
expression(3);
}
break;
case 8:
{
_localctx = new InFixSetExpressionContext(new ExpressionContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_expression);
setState(735);
if (!(precpred(_ctx, 1))) throw new FailedPredicateException(this, "precpred(_ctx, 1)");
setState(736);
_la = _input.LA(1);
if ( !(((((_la - 78)) & ~0x3f) == 0 && ((1L << (_la - 78)) & 15L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(737);
expression(2);
}
break;
case 9:
{
_localctx = new BooleanExpressionContext(new ExpressionContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_expression);
setState(738);
if (!(precpred(_ctx, 16))) throw new FailedPredicateException(this, "precpred(_ctx, 16)");
setState(739);
match(T__56);
setState(741);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__57) {
{
setState(740);
match(T__57);
}
}
setState(743);
_la = _input.LA(1);
if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & 4035225266123964416L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
break;
case 10:
{
_localctx = new TypeExpressionContext(new ExpressionContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_expression);
setState(744);
if (!(precpred(_ctx, 15))) throw new FailedPredicateException(this, "precpred(_ctx, 15)");
setState(745);
_la = _input.LA(1);
if ( !(_la==T__56 || _la==T__61) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(746);
typeSpecifier();
}
break;
case 11:
{
_localctx = new BetweenExpressionContext(new ExpressionContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_expression);
setState(747);
if (!(precpred(_ctx, 11))) throw new FailedPredicateException(this, "precpred(_ctx, 11)");
setState(749);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__64) {
{
setState(748);
match(T__64);
}
}
setState(751);
match(T__65);
setState(752);
expressionTerm(0);
setState(753);
match(T__66);
setState(754);
expressionTerm(0);
}
break;
}
}
}
setState(760);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,70,_ctx);
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
unrollRecursionContexts(_parentctx);
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class DateTimePrecisionContext extends ParserRuleContext {
public DateTimePrecisionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_dateTimePrecision; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterDateTimePrecision(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitDateTimePrecision(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitDateTimePrecision(this);
else return visitor.visitChildren(this);
}
}
public final DateTimePrecisionContext dateTimePrecision() throws RecognitionException {
DateTimePrecisionContext _localctx = new DateTimePrecisionContext(_ctx, getState());
enterRule(_localctx, 128, RULE_dateTimePrecision);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(761);
_la = _input.LA(1);
if ( !(((((_la - 82)) & ~0x3f) == 0 && ((1L << (_la - 82)) & 255L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class DateTimeComponentContext extends ParserRuleContext {
public DateTimePrecisionContext dateTimePrecision() {
return getRuleContext(DateTimePrecisionContext.class,0);
}
public DateTimeComponentContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_dateTimeComponent; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterDateTimeComponent(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitDateTimeComponent(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitDateTimeComponent(this);
else return visitor.visitChildren(this);
}
}
public final DateTimeComponentContext dateTimeComponent() throws RecognitionException {
DateTimeComponentContext _localctx = new DateTimeComponentContext(_ctx, getState());
enterRule(_localctx, 130, RULE_dateTimeComponent);
try {
setState(768);
_errHandler.sync(this);
switch (_input.LA(1)) {
case T__81:
case T__82:
case T__83:
case T__84:
case T__85:
case T__86:
case T__87:
case T__88:
enterOuterAlt(_localctx, 1);
{
setState(763);
dateTimePrecision();
}
break;
case T__89:
enterOuterAlt(_localctx, 2);
{
setState(764);
match(T__89);
}
break;
case T__90:
enterOuterAlt(_localctx, 3);
{
setState(765);
match(T__90);
}
break;
case T__91:
enterOuterAlt(_localctx, 4);
{
setState(766);
match(T__91);
}
break;
case T__92:
enterOuterAlt(_localctx, 5);
{
setState(767);
match(T__92);
}
break;
default:
throw new NoViableAltException(this);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class PluralDateTimePrecisionContext extends ParserRuleContext {
public PluralDateTimePrecisionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_pluralDateTimePrecision; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterPluralDateTimePrecision(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitPluralDateTimePrecision(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitPluralDateTimePrecision(this);
else return visitor.visitChildren(this);
}
}
public final PluralDateTimePrecisionContext pluralDateTimePrecision() throws RecognitionException {
PluralDateTimePrecisionContext _localctx = new PluralDateTimePrecisionContext(_ctx, getState());
enterRule(_localctx, 132, RULE_pluralDateTimePrecision);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(770);
_la = _input.LA(1);
if ( !(((((_la - 94)) & ~0x3f) == 0 && ((1L << (_la - 94)) & 255L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ExpressionTermContext extends ParserRuleContext {
public ExpressionTermContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_expressionTerm; }
public ExpressionTermContext() { }
public void copyFrom(ExpressionTermContext ctx) {
super.copyFrom(ctx);
}
}
@SuppressWarnings("CheckReturnValue")
public static class AdditionExpressionTermContext extends ExpressionTermContext {
public List expressionTerm() {
return getRuleContexts(ExpressionTermContext.class);
}
public ExpressionTermContext expressionTerm(int i) {
return getRuleContext(ExpressionTermContext.class,i);
}
public AdditionExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterAdditionExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitAdditionExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitAdditionExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class IndexedExpressionTermContext extends ExpressionTermContext {
public ExpressionTermContext expressionTerm() {
return getRuleContext(ExpressionTermContext.class,0);
}
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public IndexedExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterIndexedExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitIndexedExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitIndexedExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class WidthExpressionTermContext extends ExpressionTermContext {
public ExpressionTermContext expressionTerm() {
return getRuleContext(ExpressionTermContext.class,0);
}
public WidthExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterWidthExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitWidthExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitWidthExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class SetAggregateExpressionTermContext extends ExpressionTermContext {
public List expression() {
return getRuleContexts(ExpressionContext.class);
}
public ExpressionContext expression(int i) {
return getRuleContext(ExpressionContext.class,i);
}
public DateTimePrecisionContext dateTimePrecision() {
return getRuleContext(DateTimePrecisionContext.class,0);
}
public SetAggregateExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterSetAggregateExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitSetAggregateExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitSetAggregateExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class TimeUnitExpressionTermContext extends ExpressionTermContext {
public DateTimeComponentContext dateTimeComponent() {
return getRuleContext(DateTimeComponentContext.class,0);
}
public ExpressionTermContext expressionTerm() {
return getRuleContext(ExpressionTermContext.class,0);
}
public TimeUnitExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTimeUnitExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTimeUnitExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTimeUnitExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class IfThenElseExpressionTermContext extends ExpressionTermContext {
public List expression() {
return getRuleContexts(ExpressionContext.class);
}
public ExpressionContext expression(int i) {
return getRuleContext(ExpressionContext.class,i);
}
public IfThenElseExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterIfThenElseExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitIfThenElseExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitIfThenElseExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class TimeBoundaryExpressionTermContext extends ExpressionTermContext {
public ExpressionTermContext expressionTerm() {
return getRuleContext(ExpressionTermContext.class,0);
}
public TimeBoundaryExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTimeBoundaryExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTimeBoundaryExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTimeBoundaryExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class ElementExtractorExpressionTermContext extends ExpressionTermContext {
public ExpressionTermContext expressionTerm() {
return getRuleContext(ExpressionTermContext.class,0);
}
public ElementExtractorExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterElementExtractorExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitElementExtractorExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitElementExtractorExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class ConversionExpressionTermContext extends ExpressionTermContext {
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public TypeSpecifierContext typeSpecifier() {
return getRuleContext(TypeSpecifierContext.class,0);
}
public UnitContext unit() {
return getRuleContext(UnitContext.class,0);
}
public ConversionExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterConversionExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitConversionExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitConversionExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class TypeExtentExpressionTermContext extends ExpressionTermContext {
public NamedTypeSpecifierContext namedTypeSpecifier() {
return getRuleContext(NamedTypeSpecifierContext.class,0);
}
public TypeExtentExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTypeExtentExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTypeExtentExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTypeExtentExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class PredecessorExpressionTermContext extends ExpressionTermContext {
public ExpressionTermContext expressionTerm() {
return getRuleContext(ExpressionTermContext.class,0);
}
public PredecessorExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterPredecessorExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitPredecessorExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitPredecessorExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class PointExtractorExpressionTermContext extends ExpressionTermContext {
public ExpressionTermContext expressionTerm() {
return getRuleContext(ExpressionTermContext.class,0);
}
public PointExtractorExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterPointExtractorExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitPointExtractorExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitPointExtractorExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class MultiplicationExpressionTermContext extends ExpressionTermContext {
public List expressionTerm() {
return getRuleContexts(ExpressionTermContext.class);
}
public ExpressionTermContext expressionTerm(int i) {
return getRuleContext(ExpressionTermContext.class,i);
}
public MultiplicationExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterMultiplicationExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitMultiplicationExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitMultiplicationExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class AggregateExpressionTermContext extends ExpressionTermContext {
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public AggregateExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterAggregateExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitAggregateExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitAggregateExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class DurationExpressionTermContext extends ExpressionTermContext {
public PluralDateTimePrecisionContext pluralDateTimePrecision() {
return getRuleContext(PluralDateTimePrecisionContext.class,0);
}
public ExpressionTermContext expressionTerm() {
return getRuleContext(ExpressionTermContext.class,0);
}
public DurationExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterDurationExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitDurationExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitDurationExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class DifferenceExpressionTermContext extends ExpressionTermContext {
public PluralDateTimePrecisionContext pluralDateTimePrecision() {
return getRuleContext(PluralDateTimePrecisionContext.class,0);
}
public ExpressionTermContext expressionTerm() {
return getRuleContext(ExpressionTermContext.class,0);
}
public DifferenceExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterDifferenceExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitDifferenceExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitDifferenceExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class CaseExpressionTermContext extends ExpressionTermContext {
public List expression() {
return getRuleContexts(ExpressionContext.class);
}
public ExpressionContext expression(int i) {
return getRuleContext(ExpressionContext.class,i);
}
public List caseExpressionItem() {
return getRuleContexts(CaseExpressionItemContext.class);
}
public CaseExpressionItemContext caseExpressionItem(int i) {
return getRuleContext(CaseExpressionItemContext.class,i);
}
public CaseExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterCaseExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitCaseExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitCaseExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class PowerExpressionTermContext extends ExpressionTermContext {
public List expressionTerm() {
return getRuleContexts(ExpressionTermContext.class);
}
public ExpressionTermContext expressionTerm(int i) {
return getRuleContext(ExpressionTermContext.class,i);
}
public PowerExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterPowerExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitPowerExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitPowerExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class SuccessorExpressionTermContext extends ExpressionTermContext {
public ExpressionTermContext expressionTerm() {
return getRuleContext(ExpressionTermContext.class,0);
}
public SuccessorExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterSuccessorExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitSuccessorExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitSuccessorExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class PolarityExpressionTermContext extends ExpressionTermContext {
public ExpressionTermContext expressionTerm() {
return getRuleContext(ExpressionTermContext.class,0);
}
public PolarityExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterPolarityExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitPolarityExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitPolarityExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class TermExpressionTermContext extends ExpressionTermContext {
public TermContext term() {
return getRuleContext(TermContext.class,0);
}
public TermExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTermExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTermExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTermExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class InvocationExpressionTermContext extends ExpressionTermContext {
public ExpressionTermContext expressionTerm() {
return getRuleContext(ExpressionTermContext.class,0);
}
public QualifiedInvocationContext qualifiedInvocation() {
return getRuleContext(QualifiedInvocationContext.class,0);
}
public InvocationExpressionTermContext(ExpressionTermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterInvocationExpressionTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitInvocationExpressionTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitInvocationExpressionTerm(this);
else return visitor.visitChildren(this);
}
}
public final ExpressionTermContext expressionTerm() throws RecognitionException {
return expressionTerm(0);
}
private ExpressionTermContext expressionTerm(int _p) throws RecognitionException {
ParserRuleContext _parentctx = _ctx;
int _parentState = getState();
ExpressionTermContext _localctx = new ExpressionTermContext(_ctx, _parentState);
ExpressionTermContext _prevctx = _localctx;
int _startState = 134;
enterRecursionRule(_localctx, 134, RULE_expressionTerm, _p);
int _la;
try {
int _alt;
enterOuterAlt(_localctx, 1);
{
setState(850);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,77,_ctx) ) {
case 1:
{
_localctx = new TermExpressionTermContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(773);
term();
}
break;
case 2:
{
_localctx = new ConversionExpressionTermContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(774);
match(T__101);
setState(775);
expression(0);
setState(776);
match(T__102);
setState(779);
_errHandler.sync(this);
switch (_input.LA(1)) {
case T__0:
case T__1:
case T__2:
case T__3:
case T__4:
case T__5:
case T__6:
case T__7:
case T__8:
case T__9:
case T__11:
case T__12:
case T__17:
case T__19:
case T__20:
case T__23:
case T__24:
case T__25:
case T__26:
case T__27:
case T__28:
case T__29:
case T__44:
case T__49:
case T__51:
case T__52:
case T__53:
case T__54:
case T__55:
case T__73:
case T__75:
case T__76:
case T__78:
case T__79:
case T__80:
case T__89:
case T__90:
case T__91:
case T__92:
case T__105:
case T__106:
case T__108:
case T__109:
case T__110:
case T__118:
case T__119:
case T__130:
case T__131:
case T__132:
case T__133:
case T__140:
case T__141:
case T__144:
case T__148:
case T__149:
case T__153:
case T__154:
case T__155:
case QUOTEDIDENTIFIER:
case IDENTIFIER:
case DELIMITEDIDENTIFIER:
{
setState(777);
typeSpecifier();
}
break;
case T__81:
case T__82:
case T__83:
case T__84:
case T__85:
case T__86:
case T__87:
case T__88:
case T__93:
case T__94:
case T__95:
case T__96:
case T__97:
case T__98:
case T__99:
case T__100:
case STRING:
{
setState(778);
unit();
}
break;
default:
throw new NoViableAltException(this);
}
}
break;
case 3:
{
_localctx = new PolarityExpressionTermContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(781);
_la = _input.LA(1);
if ( !(_la==T__103 || _la==T__104) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(782);
expressionTerm(18);
}
break;
case 4:
{
_localctx = new TimeBoundaryExpressionTermContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(783);
_la = _input.LA(1);
if ( !(_la==T__105 || _la==T__106) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(784);
match(T__107);
setState(785);
expressionTerm(17);
}
break;
case 5:
{
_localctx = new TimeUnitExpressionTermContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(786);
dateTimeComponent();
setState(787);
match(T__18);
setState(788);
expressionTerm(16);
}
break;
case 6:
{
_localctx = new DurationExpressionTermContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(790);
match(T__67);
setState(791);
match(T__40);
setState(792);
pluralDateTimePrecision();
setState(793);
match(T__107);
setState(794);
expressionTerm(15);
}
break;
case 7:
{
_localctx = new DifferenceExpressionTermContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(796);
match(T__68);
setState(797);
match(T__40);
setState(798);
pluralDateTimePrecision();
setState(799);
match(T__107);
setState(800);
expressionTerm(14);
}
break;
case 8:
{
_localctx = new WidthExpressionTermContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(802);
match(T__108);
setState(803);
match(T__107);
setState(804);
expressionTerm(13);
}
break;
case 9:
{
_localctx = new SuccessorExpressionTermContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(805);
match(T__109);
setState(806);
match(T__107);
setState(807);
expressionTerm(12);
}
break;
case 10:
{
_localctx = new PredecessorExpressionTermContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(808);
match(T__110);
setState(809);
match(T__107);
setState(810);
expressionTerm(11);
}
break;
case 11:
{
_localctx = new ElementExtractorExpressionTermContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(811);
match(T__111);
setState(812);
match(T__18);
setState(813);
expressionTerm(10);
}
break;
case 12:
{
_localctx = new PointExtractorExpressionTermContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(814);
match(T__112);
setState(815);
match(T__18);
setState(816);
expressionTerm(9);
}
break;
case 13:
{
_localctx = new TypeExtentExpressionTermContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(817);
_la = _input.LA(1);
if ( !(_la==T__113 || _la==T__114) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(818);
namedTypeSpecifier();
}
break;
case 14:
{
_localctx = new IfThenElseExpressionTermContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(819);
match(T__121);
setState(820);
expression(0);
setState(821);
match(T__122);
setState(822);
expression(0);
setState(823);
match(T__123);
setState(824);
expression(0);
}
break;
case 15:
{
_localctx = new CaseExpressionTermContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(826);
match(T__124);
setState(828);
_errHandler.sync(this);
_la = _input.LA(1);
if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -4758861967782021122L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1905040784319597519L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 549753872505L) != 0)) {
{
setState(827);
expression(0);
}
}
setState(831);
_errHandler.sync(this);
_la = _input.LA(1);
do {
{
{
setState(830);
caseExpressionItem();
}
}
setState(833);
_errHandler.sync(this);
_la = _input.LA(1);
} while ( _la==T__129 );
setState(835);
match(T__123);
setState(836);
expression(0);
setState(837);
match(T__106);
}
break;
case 16:
{
_localctx = new AggregateExpressionTermContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(839);
_la = _input.LA(1);
if ( !(_la==T__47 || _la==T__125) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(840);
expression(0);
}
break;
case 17:
{
_localctx = new SetAggregateExpressionTermContext(_localctx);
_ctx = _localctx;
_prevctx = _localctx;
setState(841);
_la = _input.LA(1);
if ( !(_la==T__126 || _la==T__127) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(842);
expression(0);
setState(848);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,76,_ctx) ) {
case 1:
{
setState(843);
match(T__128);
setState(846);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,75,_ctx) ) {
case 1:
{
setState(844);
dateTimePrecision();
}
break;
case 2:
{
setState(845);
expression(0);
}
break;
}
}
break;
}
}
break;
}
_ctx.stop = _input.LT(-1);
setState(871);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,79,_ctx);
while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
if ( _alt==1 ) {
if ( _parseListeners!=null ) triggerExitRuleEvent();
_prevctx = _localctx;
{
setState(869);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,78,_ctx) ) {
case 1:
{
_localctx = new PowerExpressionTermContext(new ExpressionTermContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_expressionTerm);
setState(852);
if (!(precpred(_ctx, 7))) throw new FailedPredicateException(this, "precpred(_ctx, 7)");
setState(853);
match(T__115);
setState(854);
expressionTerm(8);
}
break;
case 2:
{
_localctx = new MultiplicationExpressionTermContext(new ExpressionTermContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_expressionTerm);
setState(855);
if (!(precpred(_ctx, 6))) throw new FailedPredicateException(this, "precpred(_ctx, 6)");
setState(856);
_la = _input.LA(1);
if ( !(((((_la - 117)) & ~0x3f) == 0 && ((1L << (_la - 117)) & 15L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(857);
expressionTerm(7);
}
break;
case 3:
{
_localctx = new AdditionExpressionTermContext(new ExpressionTermContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_expressionTerm);
setState(858);
if (!(precpred(_ctx, 5))) throw new FailedPredicateException(this, "precpred(_ctx, 5)");
setState(859);
_la = _input.LA(1);
if ( !(((((_la - 104)) & ~0x3f) == 0 && ((1L << (_la - 104)) & 131075L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(860);
expressionTerm(6);
}
break;
case 4:
{
_localctx = new InvocationExpressionTermContext(new ExpressionTermContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_expressionTerm);
setState(861);
if (!(precpred(_ctx, 21))) throw new FailedPredicateException(this, "precpred(_ctx, 21)");
setState(862);
match(T__16);
setState(863);
qualifiedInvocation();
}
break;
case 5:
{
_localctx = new IndexedExpressionTermContext(new ExpressionTermContext(_parentctx, _parentState));
pushNewRecursionContext(_localctx, _startState, RULE_expressionTerm);
setState(864);
if (!(precpred(_ctx, 20))) throw new FailedPredicateException(this, "precpred(_ctx, 20)");
setState(865);
match(T__37);
setState(866);
expression(0);
setState(867);
match(T__39);
}
break;
}
}
}
setState(873);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,79,_ctx);
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
unrollRecursionContexts(_parentctx);
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class CaseExpressionItemContext extends ParserRuleContext {
public List expression() {
return getRuleContexts(ExpressionContext.class);
}
public ExpressionContext expression(int i) {
return getRuleContext(ExpressionContext.class,i);
}
public CaseExpressionItemContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_caseExpressionItem; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterCaseExpressionItem(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitCaseExpressionItem(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitCaseExpressionItem(this);
else return visitor.visitChildren(this);
}
}
public final CaseExpressionItemContext caseExpressionItem() throws RecognitionException {
CaseExpressionItemContext _localctx = new CaseExpressionItemContext(_ctx, getState());
enterRule(_localctx, 136, RULE_caseExpressionItem);
try {
enterOuterAlt(_localctx, 1);
{
setState(874);
match(T__129);
setState(875);
expression(0);
setState(876);
match(T__122);
setState(877);
expression(0);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class DateTimePrecisionSpecifierContext extends ParserRuleContext {
public DateTimePrecisionContext dateTimePrecision() {
return getRuleContext(DateTimePrecisionContext.class,0);
}
public DateTimePrecisionSpecifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_dateTimePrecisionSpecifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterDateTimePrecisionSpecifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitDateTimePrecisionSpecifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitDateTimePrecisionSpecifier(this);
else return visitor.visitChildren(this);
}
}
public final DateTimePrecisionSpecifierContext dateTimePrecisionSpecifier() throws RecognitionException {
DateTimePrecisionSpecifierContext _localctx = new DateTimePrecisionSpecifierContext(_ctx, getState());
enterRule(_localctx, 138, RULE_dateTimePrecisionSpecifier);
try {
enterOuterAlt(_localctx, 1);
{
setState(879);
dateTimePrecision();
setState(880);
match(T__107);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class RelativeQualifierContext extends ParserRuleContext {
public RelativeQualifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_relativeQualifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterRelativeQualifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitRelativeQualifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitRelativeQualifier(this);
else return visitor.visitChildren(this);
}
}
public final RelativeQualifierContext relativeQualifier() throws RecognitionException {
RelativeQualifierContext _localctx = new RelativeQualifierContext(_ctx, getState());
enterRule(_localctx, 140, RULE_relativeQualifier);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(882);
_la = _input.LA(1);
if ( !(_la==T__130 || _la==T__131) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class OffsetRelativeQualifierContext extends ParserRuleContext {
public OffsetRelativeQualifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_offsetRelativeQualifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterOffsetRelativeQualifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitOffsetRelativeQualifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitOffsetRelativeQualifier(this);
else return visitor.visitChildren(this);
}
}
public final OffsetRelativeQualifierContext offsetRelativeQualifier() throws RecognitionException {
OffsetRelativeQualifierContext _localctx = new OffsetRelativeQualifierContext(_ctx, getState());
enterRule(_localctx, 142, RULE_offsetRelativeQualifier);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(884);
_la = _input.LA(1);
if ( !(_la==T__132 || _la==T__133) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ExclusiveRelativeQualifierContext extends ParserRuleContext {
public ExclusiveRelativeQualifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_exclusiveRelativeQualifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterExclusiveRelativeQualifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitExclusiveRelativeQualifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitExclusiveRelativeQualifier(this);
else return visitor.visitChildren(this);
}
}
public final ExclusiveRelativeQualifierContext exclusiveRelativeQualifier() throws RecognitionException {
ExclusiveRelativeQualifierContext _localctx = new ExclusiveRelativeQualifierContext(_ctx, getState());
enterRule(_localctx, 144, RULE_exclusiveRelativeQualifier);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(886);
_la = _input.LA(1);
if ( !(_la==T__134 || _la==T__135) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class QuantityOffsetContext extends ParserRuleContext {
public QuantityContext quantity() {
return getRuleContext(QuantityContext.class,0);
}
public OffsetRelativeQualifierContext offsetRelativeQualifier() {
return getRuleContext(OffsetRelativeQualifierContext.class,0);
}
public ExclusiveRelativeQualifierContext exclusiveRelativeQualifier() {
return getRuleContext(ExclusiveRelativeQualifierContext.class,0);
}
public QuantityOffsetContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_quantityOffset; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterQuantityOffset(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitQuantityOffset(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitQuantityOffset(this);
else return visitor.visitChildren(this);
}
}
public final QuantityOffsetContext quantityOffset() throws RecognitionException {
QuantityOffsetContext _localctx = new QuantityOffsetContext(_ctx, getState());
enterRule(_localctx, 146, RULE_quantityOffset);
int _la;
try {
setState(895);
_errHandler.sync(this);
switch (_input.LA(1)) {
case NUMBER:
enterOuterAlt(_localctx, 1);
{
{
setState(888);
quantity();
setState(890);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__132 || _la==T__133) {
{
setState(889);
offsetRelativeQualifier();
}
}
}
}
break;
case T__134:
case T__135:
enterOuterAlt(_localctx, 2);
{
{
setState(892);
exclusiveRelativeQualifier();
setState(893);
quantity();
}
}
break;
default:
throw new NoViableAltException(this);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class TemporalRelationshipContext extends ParserRuleContext {
public TemporalRelationshipContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_temporalRelationship; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTemporalRelationship(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTemporalRelationship(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTemporalRelationship(this);
else return visitor.visitChildren(this);
}
}
public final TemporalRelationshipContext temporalRelationship() throws RecognitionException {
TemporalRelationshipContext _localctx = new TemporalRelationshipContext(_ctx, getState());
enterRule(_localctx, 148, RULE_temporalRelationship);
int _la;
try {
setState(905);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,84,_ctx) ) {
case 1:
enterOuterAlt(_localctx, 1);
{
{
setState(898);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__136) {
{
setState(897);
match(T__136);
}
}
setState(900);
_la = _input.LA(1);
if ( !(_la==T__137 || _la==T__138) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
break;
case 2:
enterOuterAlt(_localctx, 2);
{
{
setState(901);
_la = _input.LA(1);
if ( !(_la==T__137 || _la==T__138) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(903);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__139) {
{
setState(902);
match(T__139);
}
}
}
}
break;
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class IntervalOperatorPhraseContext extends ParserRuleContext {
public IntervalOperatorPhraseContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_intervalOperatorPhrase; }
public IntervalOperatorPhraseContext() { }
public void copyFrom(IntervalOperatorPhraseContext ctx) {
super.copyFrom(ctx);
}
}
@SuppressWarnings("CheckReturnValue")
public static class WithinIntervalOperatorPhraseContext extends IntervalOperatorPhraseContext {
public QuantityContext quantity() {
return getRuleContext(QuantityContext.class,0);
}
public WithinIntervalOperatorPhraseContext(IntervalOperatorPhraseContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterWithinIntervalOperatorPhrase(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitWithinIntervalOperatorPhrase(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitWithinIntervalOperatorPhrase(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class IncludedInIntervalOperatorPhraseContext extends IntervalOperatorPhraseContext {
public DateTimePrecisionSpecifierContext dateTimePrecisionSpecifier() {
return getRuleContext(DateTimePrecisionSpecifierContext.class,0);
}
public IncludedInIntervalOperatorPhraseContext(IntervalOperatorPhraseContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterIncludedInIntervalOperatorPhrase(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitIncludedInIntervalOperatorPhrase(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitIncludedInIntervalOperatorPhrase(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class EndsIntervalOperatorPhraseContext extends IntervalOperatorPhraseContext {
public DateTimePrecisionSpecifierContext dateTimePrecisionSpecifier() {
return getRuleContext(DateTimePrecisionSpecifierContext.class,0);
}
public EndsIntervalOperatorPhraseContext(IntervalOperatorPhraseContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterEndsIntervalOperatorPhrase(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitEndsIntervalOperatorPhrase(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitEndsIntervalOperatorPhrase(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class ConcurrentWithIntervalOperatorPhraseContext extends IntervalOperatorPhraseContext {
public RelativeQualifierContext relativeQualifier() {
return getRuleContext(RelativeQualifierContext.class,0);
}
public DateTimePrecisionContext dateTimePrecision() {
return getRuleContext(DateTimePrecisionContext.class,0);
}
public ConcurrentWithIntervalOperatorPhraseContext(IntervalOperatorPhraseContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterConcurrentWithIntervalOperatorPhrase(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitConcurrentWithIntervalOperatorPhrase(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitConcurrentWithIntervalOperatorPhrase(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class OverlapsIntervalOperatorPhraseContext extends IntervalOperatorPhraseContext {
public DateTimePrecisionSpecifierContext dateTimePrecisionSpecifier() {
return getRuleContext(DateTimePrecisionSpecifierContext.class,0);
}
public OverlapsIntervalOperatorPhraseContext(IntervalOperatorPhraseContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterOverlapsIntervalOperatorPhrase(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitOverlapsIntervalOperatorPhrase(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitOverlapsIntervalOperatorPhrase(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class IncludesIntervalOperatorPhraseContext extends IntervalOperatorPhraseContext {
public DateTimePrecisionSpecifierContext dateTimePrecisionSpecifier() {
return getRuleContext(DateTimePrecisionSpecifierContext.class,0);
}
public IncludesIntervalOperatorPhraseContext(IntervalOperatorPhraseContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterIncludesIntervalOperatorPhrase(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitIncludesIntervalOperatorPhrase(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitIncludesIntervalOperatorPhrase(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class BeforeOrAfterIntervalOperatorPhraseContext extends IntervalOperatorPhraseContext {
public TemporalRelationshipContext temporalRelationship() {
return getRuleContext(TemporalRelationshipContext.class,0);
}
public QuantityOffsetContext quantityOffset() {
return getRuleContext(QuantityOffsetContext.class,0);
}
public DateTimePrecisionSpecifierContext dateTimePrecisionSpecifier() {
return getRuleContext(DateTimePrecisionSpecifierContext.class,0);
}
public BeforeOrAfterIntervalOperatorPhraseContext(IntervalOperatorPhraseContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterBeforeOrAfterIntervalOperatorPhrase(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitBeforeOrAfterIntervalOperatorPhrase(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitBeforeOrAfterIntervalOperatorPhrase(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class MeetsIntervalOperatorPhraseContext extends IntervalOperatorPhraseContext {
public DateTimePrecisionSpecifierContext dateTimePrecisionSpecifier() {
return getRuleContext(DateTimePrecisionSpecifierContext.class,0);
}
public MeetsIntervalOperatorPhraseContext(IntervalOperatorPhraseContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterMeetsIntervalOperatorPhrase(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitMeetsIntervalOperatorPhrase(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitMeetsIntervalOperatorPhrase(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class StartsIntervalOperatorPhraseContext extends IntervalOperatorPhraseContext {
public DateTimePrecisionSpecifierContext dateTimePrecisionSpecifier() {
return getRuleContext(DateTimePrecisionSpecifierContext.class,0);
}
public StartsIntervalOperatorPhraseContext(IntervalOperatorPhraseContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterStartsIntervalOperatorPhrase(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitStartsIntervalOperatorPhrase(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitStartsIntervalOperatorPhrase(this);
else return visitor.visitChildren(this);
}
}
public final IntervalOperatorPhraseContext intervalOperatorPhrase() throws RecognitionException {
IntervalOperatorPhraseContext _localctx = new IntervalOperatorPhraseContext(_ctx, getState());
enterRule(_localctx, 150, RULE_intervalOperatorPhrase);
int _la;
try {
setState(988);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,108,_ctx) ) {
case 1:
_localctx = new ConcurrentWithIntervalOperatorPhraseContext(_localctx);
enterOuterAlt(_localctx, 1);
{
setState(908);
_errHandler.sync(this);
_la = _input.LA(1);
if (((((_la - 141)) & ~0x3f) == 0 && ((1L << (_la - 141)) & 7L) != 0)) {
{
setState(907);
_la = _input.LA(1);
if ( !(((((_la - 141)) & ~0x3f) == 0 && ((1L << (_la - 141)) & 7L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(910);
match(T__143);
setState(912);
_errHandler.sync(this);
_la = _input.LA(1);
if (((((_la - 82)) & ~0x3f) == 0 && ((1L << (_la - 82)) & 255L) != 0)) {
{
setState(911);
dateTimePrecision();
}
}
setState(916);
_errHandler.sync(this);
switch (_input.LA(1)) {
case T__130:
case T__131:
{
setState(914);
relativeQualifier();
}
break;
case T__61:
{
setState(915);
match(T__61);
}
break;
default:
throw new NoViableAltException(this);
}
setState(919);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,88,_ctx) ) {
case 1:
{
setState(918);
_la = _input.LA(1);
if ( !(_la==T__105 || _la==T__106) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
break;
}
}
break;
case 2:
_localctx = new IncludesIntervalOperatorPhraseContext(_localctx);
enterOuterAlt(_localctx, 2);
{
setState(922);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__64) {
{
setState(921);
match(T__64);
}
}
setState(924);
match(T__144);
setState(926);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,90,_ctx) ) {
case 1:
{
setState(925);
dateTimePrecisionSpecifier();
}
break;
}
setState(929);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,91,_ctx) ) {
case 1:
{
setState(928);
_la = _input.LA(1);
if ( !(_la==T__105 || _la==T__106) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
break;
}
}
break;
case 3:
_localctx = new IncludedInIntervalOperatorPhraseContext(_localctx);
enterOuterAlt(_localctx, 3);
{
setState(932);
_errHandler.sync(this);
_la = _input.LA(1);
if (((((_la - 141)) & ~0x3f) == 0 && ((1L << (_la - 141)) & 7L) != 0)) {
{
setState(931);
_la = _input.LA(1);
if ( !(((((_la - 141)) & ~0x3f) == 0 && ((1L << (_la - 141)) & 7L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(935);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__64) {
{
setState(934);
match(T__64);
}
}
setState(937);
_la = _input.LA(1);
if ( !(_la==T__145 || _la==T__146) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(939);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,94,_ctx) ) {
case 1:
{
setState(938);
dateTimePrecisionSpecifier();
}
break;
}
}
break;
case 4:
_localctx = new BeforeOrAfterIntervalOperatorPhraseContext(_localctx);
enterOuterAlt(_localctx, 4);
{
setState(942);
_errHandler.sync(this);
_la = _input.LA(1);
if (((((_la - 141)) & ~0x3f) == 0 && ((1L << (_la - 141)) & 7L) != 0)) {
{
setState(941);
_la = _input.LA(1);
if ( !(((((_la - 141)) & ~0x3f) == 0 && ((1L << (_la - 141)) & 7L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(945);
_errHandler.sync(this);
_la = _input.LA(1);
if (((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 2147483651L) != 0)) {
{
setState(944);
quantityOffset();
}
}
setState(947);
temporalRelationship();
setState(949);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,97,_ctx) ) {
case 1:
{
setState(948);
dateTimePrecisionSpecifier();
}
break;
}
setState(952);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,98,_ctx) ) {
case 1:
{
setState(951);
_la = _input.LA(1);
if ( !(_la==T__105 || _la==T__106) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
break;
}
}
break;
case 5:
_localctx = new WithinIntervalOperatorPhraseContext(_localctx);
enterOuterAlt(_localctx, 5);
{
setState(955);
_errHandler.sync(this);
_la = _input.LA(1);
if (((((_la - 141)) & ~0x3f) == 0 && ((1L << (_la - 141)) & 7L) != 0)) {
{
setState(954);
_la = _input.LA(1);
if ( !(((((_la - 141)) & ~0x3f) == 0 && ((1L << (_la - 141)) & 7L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(958);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__64) {
{
setState(957);
match(T__64);
}
}
setState(960);
match(T__147);
setState(961);
quantity();
setState(962);
match(T__107);
setState(964);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,101,_ctx) ) {
case 1:
{
setState(963);
_la = _input.LA(1);
if ( !(_la==T__105 || _la==T__106) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
break;
}
}
break;
case 6:
_localctx = new MeetsIntervalOperatorPhraseContext(_localctx);
enterOuterAlt(_localctx, 6);
{
setState(966);
match(T__148);
setState(968);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__137 || _la==T__138) {
{
setState(967);
_la = _input.LA(1);
if ( !(_la==T__137 || _la==T__138) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(971);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,103,_ctx) ) {
case 1:
{
setState(970);
dateTimePrecisionSpecifier();
}
break;
}
}
break;
case 7:
_localctx = new OverlapsIntervalOperatorPhraseContext(_localctx);
enterOuterAlt(_localctx, 7);
{
setState(973);
match(T__149);
setState(975);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__137 || _la==T__138) {
{
setState(974);
_la = _input.LA(1);
if ( !(_la==T__137 || _la==T__138) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(978);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,105,_ctx) ) {
case 1:
{
setState(977);
dateTimePrecisionSpecifier();
}
break;
}
}
break;
case 8:
_localctx = new StartsIntervalOperatorPhraseContext(_localctx);
enterOuterAlt(_localctx, 8);
{
setState(980);
match(T__140);
setState(982);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,106,_ctx) ) {
case 1:
{
setState(981);
dateTimePrecisionSpecifier();
}
break;
}
}
break;
case 9:
_localctx = new EndsIntervalOperatorPhraseContext(_localctx);
enterOuterAlt(_localctx, 9);
{
setState(984);
match(T__141);
setState(986);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,107,_ctx) ) {
case 1:
{
setState(985);
dateTimePrecisionSpecifier();
}
break;
}
}
break;
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class TermContext extends ParserRuleContext {
public TermContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_term; }
public TermContext() { }
public void copyFrom(TermContext ctx) {
super.copyFrom(ctx);
}
}
@SuppressWarnings("CheckReturnValue")
public static class ExternalConstantTermContext extends TermContext {
public ExternalConstantContext externalConstant() {
return getRuleContext(ExternalConstantContext.class,0);
}
public ExternalConstantTermContext(TermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterExternalConstantTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitExternalConstantTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitExternalConstantTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class TupleSelectorTermContext extends TermContext {
public TupleSelectorContext tupleSelector() {
return getRuleContext(TupleSelectorContext.class,0);
}
public TupleSelectorTermContext(TermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTupleSelectorTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTupleSelectorTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTupleSelectorTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class LiteralTermContext extends TermContext {
public LiteralContext literal() {
return getRuleContext(LiteralContext.class,0);
}
public LiteralTermContext(TermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterLiteralTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitLiteralTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitLiteralTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class ConceptSelectorTermContext extends TermContext {
public ConceptSelectorContext conceptSelector() {
return getRuleContext(ConceptSelectorContext.class,0);
}
public ConceptSelectorTermContext(TermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterConceptSelectorTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitConceptSelectorTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitConceptSelectorTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class ParenthesizedTermContext extends TermContext {
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public ParenthesizedTermContext(TermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterParenthesizedTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitParenthesizedTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitParenthesizedTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class CodeSelectorTermContext extends TermContext {
public CodeSelectorContext codeSelector() {
return getRuleContext(CodeSelectorContext.class,0);
}
public CodeSelectorTermContext(TermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterCodeSelectorTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitCodeSelectorTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitCodeSelectorTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class InvocationTermContext extends TermContext {
public InvocationContext invocation() {
return getRuleContext(InvocationContext.class,0);
}
public InvocationTermContext(TermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterInvocationTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitInvocationTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitInvocationTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class InstanceSelectorTermContext extends TermContext {
public InstanceSelectorContext instanceSelector() {
return getRuleContext(InstanceSelectorContext.class,0);
}
public InstanceSelectorTermContext(TermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterInstanceSelectorTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitInstanceSelectorTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitInstanceSelectorTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class IntervalSelectorTermContext extends TermContext {
public IntervalSelectorContext intervalSelector() {
return getRuleContext(IntervalSelectorContext.class,0);
}
public IntervalSelectorTermContext(TermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterIntervalSelectorTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitIntervalSelectorTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitIntervalSelectorTerm(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class ListSelectorTermContext extends TermContext {
public ListSelectorContext listSelector() {
return getRuleContext(ListSelectorContext.class,0);
}
public ListSelectorTermContext(TermContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterListSelectorTerm(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitListSelectorTerm(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitListSelectorTerm(this);
else return visitor.visitChildren(this);
}
}
public final TermContext term() throws RecognitionException {
TermContext _localctx = new TermContext(_ctx, getState());
enterRule(_localctx, 152, RULE_term);
try {
setState(1003);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,109,_ctx) ) {
case 1:
_localctx = new InvocationTermContext(_localctx);
enterOuterAlt(_localctx, 1);
{
setState(990);
invocation();
}
break;
case 2:
_localctx = new LiteralTermContext(_localctx);
enterOuterAlt(_localctx, 2);
{
setState(991);
literal();
}
break;
case 3:
_localctx = new ExternalConstantTermContext(_localctx);
enterOuterAlt(_localctx, 3);
{
setState(992);
externalConstant();
}
break;
case 4:
_localctx = new IntervalSelectorTermContext(_localctx);
enterOuterAlt(_localctx, 4);
{
setState(993);
intervalSelector();
}
break;
case 5:
_localctx = new TupleSelectorTermContext(_localctx);
enterOuterAlt(_localctx, 5);
{
setState(994);
tupleSelector();
}
break;
case 6:
_localctx = new InstanceSelectorTermContext(_localctx);
enterOuterAlt(_localctx, 6);
{
setState(995);
instanceSelector();
}
break;
case 7:
_localctx = new ListSelectorTermContext(_localctx);
enterOuterAlt(_localctx, 7);
{
setState(996);
listSelector();
}
break;
case 8:
_localctx = new CodeSelectorTermContext(_localctx);
enterOuterAlt(_localctx, 8);
{
setState(997);
codeSelector();
}
break;
case 9:
_localctx = new ConceptSelectorTermContext(_localctx);
enterOuterAlt(_localctx, 9);
{
setState(998);
conceptSelector();
}
break;
case 10:
_localctx = new ParenthesizedTermContext(_localctx);
enterOuterAlt(_localctx, 10);
{
setState(999);
match(T__30);
setState(1000);
expression(0);
setState(1001);
match(T__31);
}
break;
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class QualifiedInvocationContext extends ParserRuleContext {
public QualifiedInvocationContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_qualifiedInvocation; }
public QualifiedInvocationContext() { }
public void copyFrom(QualifiedInvocationContext ctx) {
super.copyFrom(ctx);
}
}
@SuppressWarnings("CheckReturnValue")
public static class QualifiedFunctionInvocationContext extends QualifiedInvocationContext {
public QualifiedFunctionContext qualifiedFunction() {
return getRuleContext(QualifiedFunctionContext.class,0);
}
public QualifiedFunctionInvocationContext(QualifiedInvocationContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterQualifiedFunctionInvocation(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitQualifiedFunctionInvocation(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitQualifiedFunctionInvocation(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class QualifiedMemberInvocationContext extends QualifiedInvocationContext {
public ReferentialIdentifierContext referentialIdentifier() {
return getRuleContext(ReferentialIdentifierContext.class,0);
}
public QualifiedMemberInvocationContext(QualifiedInvocationContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterQualifiedMemberInvocation(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitQualifiedMemberInvocation(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitQualifiedMemberInvocation(this);
else return visitor.visitChildren(this);
}
}
public final QualifiedInvocationContext qualifiedInvocation() throws RecognitionException {
QualifiedInvocationContext _localctx = new QualifiedInvocationContext(_ctx, getState());
enterRule(_localctx, 154, RULE_qualifiedInvocation);
try {
setState(1007);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,110,_ctx) ) {
case 1:
_localctx = new QualifiedMemberInvocationContext(_localctx);
enterOuterAlt(_localctx, 1);
{
setState(1005);
referentialIdentifier();
}
break;
case 2:
_localctx = new QualifiedFunctionInvocationContext(_localctx);
enterOuterAlt(_localctx, 2);
{
setState(1006);
qualifiedFunction();
}
break;
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class QualifiedFunctionContext extends ParserRuleContext {
public IdentifierOrFunctionIdentifierContext identifierOrFunctionIdentifier() {
return getRuleContext(IdentifierOrFunctionIdentifierContext.class,0);
}
public ParamListContext paramList() {
return getRuleContext(ParamListContext.class,0);
}
public QualifiedFunctionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_qualifiedFunction; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterQualifiedFunction(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitQualifiedFunction(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitQualifiedFunction(this);
else return visitor.visitChildren(this);
}
}
public final QualifiedFunctionContext qualifiedFunction() throws RecognitionException {
QualifiedFunctionContext _localctx = new QualifiedFunctionContext(_ctx, getState());
enterRule(_localctx, 156, RULE_qualifiedFunction);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(1009);
identifierOrFunctionIdentifier();
setState(1010);
match(T__30);
setState(1012);
_errHandler.sync(this);
_la = _input.LA(1);
if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -4758861967782021122L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1905040784319597519L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 549753872505L) != 0)) {
{
setState(1011);
paramList();
}
}
setState(1014);
match(T__31);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class InvocationContext extends ParserRuleContext {
public InvocationContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_invocation; }
public InvocationContext() { }
public void copyFrom(InvocationContext ctx) {
super.copyFrom(ctx);
}
}
@SuppressWarnings("CheckReturnValue")
public static class TotalInvocationContext extends InvocationContext {
public TotalInvocationContext(InvocationContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTotalInvocation(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTotalInvocation(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTotalInvocation(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class ThisInvocationContext extends InvocationContext {
public ThisInvocationContext(InvocationContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterThisInvocation(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitThisInvocation(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitThisInvocation(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class IndexInvocationContext extends InvocationContext {
public IndexInvocationContext(InvocationContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterIndexInvocation(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitIndexInvocation(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitIndexInvocation(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class FunctionInvocationContext extends InvocationContext {
public FunctionContext function() {
return getRuleContext(FunctionContext.class,0);
}
public FunctionInvocationContext(InvocationContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterFunctionInvocation(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitFunctionInvocation(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitFunctionInvocation(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class MemberInvocationContext extends InvocationContext {
public ReferentialIdentifierContext referentialIdentifier() {
return getRuleContext(ReferentialIdentifierContext.class,0);
}
public MemberInvocationContext(InvocationContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterMemberInvocation(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitMemberInvocation(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitMemberInvocation(this);
else return visitor.visitChildren(this);
}
}
public final InvocationContext invocation() throws RecognitionException {
InvocationContext _localctx = new InvocationContext(_ctx, getState());
enterRule(_localctx, 158, RULE_invocation);
try {
setState(1021);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,112,_ctx) ) {
case 1:
_localctx = new MemberInvocationContext(_localctx);
enterOuterAlt(_localctx, 1);
{
setState(1016);
referentialIdentifier();
}
break;
case 2:
_localctx = new FunctionInvocationContext(_localctx);
enterOuterAlt(_localctx, 2);
{
setState(1017);
function();
}
break;
case 3:
_localctx = new ThisInvocationContext(_localctx);
enterOuterAlt(_localctx, 3);
{
setState(1018);
match(T__150);
}
break;
case 4:
_localctx = new IndexInvocationContext(_localctx);
enterOuterAlt(_localctx, 4);
{
setState(1019);
match(T__151);
}
break;
case 5:
_localctx = new TotalInvocationContext(_localctx);
enterOuterAlt(_localctx, 5);
{
setState(1020);
match(T__152);
}
break;
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class FunctionContext extends ParserRuleContext {
public ReferentialIdentifierContext referentialIdentifier() {
return getRuleContext(ReferentialIdentifierContext.class,0);
}
public ParamListContext paramList() {
return getRuleContext(ParamListContext.class,0);
}
public FunctionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_function; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterFunction(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitFunction(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitFunction(this);
else return visitor.visitChildren(this);
}
}
public final FunctionContext function() throws RecognitionException {
FunctionContext _localctx = new FunctionContext(_ctx, getState());
enterRule(_localctx, 160, RULE_function);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(1023);
referentialIdentifier();
setState(1024);
match(T__30);
setState(1026);
_errHandler.sync(this);
_la = _input.LA(1);
if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -4758861967782021122L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1905040784319597519L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 549753872505L) != 0)) {
{
setState(1025);
paramList();
}
}
setState(1028);
match(T__31);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class RatioContext extends ParserRuleContext {
public List quantity() {
return getRuleContexts(QuantityContext.class);
}
public QuantityContext quantity(int i) {
return getRuleContext(QuantityContext.class,i);
}
public RatioContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_ratio; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterRatio(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitRatio(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitRatio(this);
else return visitor.visitChildren(this);
}
}
public final RatioContext ratio() throws RecognitionException {
RatioContext _localctx = new RatioContext(_ctx, getState());
enterRule(_localctx, 162, RULE_ratio);
try {
enterOuterAlt(_localctx, 1);
{
setState(1030);
quantity();
setState(1031);
match(T__10);
setState(1032);
quantity();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class LiteralContext extends ParserRuleContext {
public LiteralContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_literal; }
public LiteralContext() { }
public void copyFrom(LiteralContext ctx) {
super.copyFrom(ctx);
}
}
@SuppressWarnings("CheckReturnValue")
public static class TimeLiteralContext extends LiteralContext {
public TerminalNode TIME() { return getToken(cqlParser.TIME, 0); }
public TimeLiteralContext(LiteralContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTimeLiteral(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTimeLiteral(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTimeLiteral(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class NullLiteralContext extends LiteralContext {
public NullLiteralContext(LiteralContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterNullLiteral(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitNullLiteral(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitNullLiteral(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class RatioLiteralContext extends LiteralContext {
public RatioContext ratio() {
return getRuleContext(RatioContext.class,0);
}
public RatioLiteralContext(LiteralContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterRatioLiteral(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitRatioLiteral(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitRatioLiteral(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class DateTimeLiteralContext extends LiteralContext {
public TerminalNode DATETIME() { return getToken(cqlParser.DATETIME, 0); }
public DateTimeLiteralContext(LiteralContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterDateTimeLiteral(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitDateTimeLiteral(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitDateTimeLiteral(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class StringLiteralContext extends LiteralContext {
public TerminalNode STRING() { return getToken(cqlParser.STRING, 0); }
public StringLiteralContext(LiteralContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterStringLiteral(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitStringLiteral(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitStringLiteral(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class DateLiteralContext extends LiteralContext {
public TerminalNode DATE() { return getToken(cqlParser.DATE, 0); }
public DateLiteralContext(LiteralContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterDateLiteral(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitDateLiteral(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitDateLiteral(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class BooleanLiteralContext extends LiteralContext {
public BooleanLiteralContext(LiteralContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterBooleanLiteral(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitBooleanLiteral(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitBooleanLiteral(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class NumberLiteralContext extends LiteralContext {
public TerminalNode NUMBER() { return getToken(cqlParser.NUMBER, 0); }
public NumberLiteralContext(LiteralContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterNumberLiteral(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitNumberLiteral(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitNumberLiteral(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class LongNumberLiteralContext extends LiteralContext {
public TerminalNode LONGNUMBER() { return getToken(cqlParser.LONGNUMBER, 0); }
public LongNumberLiteralContext(LiteralContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterLongNumberLiteral(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitLongNumberLiteral(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitLongNumberLiteral(this);
else return visitor.visitChildren(this);
}
}
@SuppressWarnings("CheckReturnValue")
public static class QuantityLiteralContext extends LiteralContext {
public QuantityContext quantity() {
return getRuleContext(QuantityContext.class,0);
}
public QuantityLiteralContext(LiteralContext ctx) { copyFrom(ctx); }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterQuantityLiteral(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitQuantityLiteral(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitQuantityLiteral(this);
else return visitor.visitChildren(this);
}
}
public final LiteralContext literal() throws RecognitionException {
LiteralContext _localctx = new LiteralContext(_ctx, getState());
enterRule(_localctx, 164, RULE_literal);
int _la;
try {
setState(1044);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,114,_ctx) ) {
case 1:
_localctx = new BooleanLiteralContext(_localctx);
enterOuterAlt(_localctx, 1);
{
setState(1034);
_la = _input.LA(1);
if ( !(_la==T__59 || _la==T__60) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
break;
case 2:
_localctx = new NullLiteralContext(_localctx);
enterOuterAlt(_localctx, 2);
{
setState(1035);
match(T__58);
}
break;
case 3:
_localctx = new StringLiteralContext(_localctx);
enterOuterAlt(_localctx, 3);
{
setState(1036);
match(STRING);
}
break;
case 4:
_localctx = new NumberLiteralContext(_localctx);
enterOuterAlt(_localctx, 4);
{
setState(1037);
match(NUMBER);
}
break;
case 5:
_localctx = new LongNumberLiteralContext(_localctx);
enterOuterAlt(_localctx, 5);
{
setState(1038);
match(LONGNUMBER);
}
break;
case 6:
_localctx = new DateTimeLiteralContext(_localctx);
enterOuterAlt(_localctx, 6);
{
setState(1039);
match(DATETIME);
}
break;
case 7:
_localctx = new DateLiteralContext(_localctx);
enterOuterAlt(_localctx, 7);
{
setState(1040);
match(DATE);
}
break;
case 8:
_localctx = new TimeLiteralContext(_localctx);
enterOuterAlt(_localctx, 8);
{
setState(1041);
match(TIME);
}
break;
case 9:
_localctx = new QuantityLiteralContext(_localctx);
enterOuterAlt(_localctx, 9);
{
setState(1042);
quantity();
}
break;
case 10:
_localctx = new RatioLiteralContext(_localctx);
enterOuterAlt(_localctx, 10);
{
setState(1043);
ratio();
}
break;
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class IntervalSelectorContext extends ParserRuleContext {
public List expression() {
return getRuleContexts(ExpressionContext.class);
}
public ExpressionContext expression(int i) {
return getRuleContext(ExpressionContext.class,i);
}
public IntervalSelectorContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_intervalSelector; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterIntervalSelector(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitIntervalSelector(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitIntervalSelector(this);
else return visitor.visitChildren(this);
}
}
public final IntervalSelectorContext intervalSelector() throws RecognitionException {
IntervalSelectorContext _localctx = new IntervalSelectorContext(_ctx, getState());
enterRule(_localctx, 166, RULE_intervalSelector);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(1046);
match(T__23);
setState(1047);
_la = _input.LA(1);
if ( !(_la==T__30 || _la==T__37) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(1048);
expression(0);
setState(1049);
match(T__14);
setState(1050);
expression(0);
setState(1051);
_la = _input.LA(1);
if ( !(_la==T__31 || _la==T__39) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class TupleSelectorContext extends ParserRuleContext {
public List tupleElementSelector() {
return getRuleContexts(TupleElementSelectorContext.class);
}
public TupleElementSelectorContext tupleElementSelector(int i) {
return getRuleContext(TupleElementSelectorContext.class,i);
}
public TupleSelectorContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_tupleSelector; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTupleSelector(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTupleSelector(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTupleSelector(this);
else return visitor.visitChildren(this);
}
}
public final TupleSelectorContext tupleSelector() throws RecognitionException {
TupleSelectorContext _localctx = new TupleSelectorContext(_ctx, getState());
enterRule(_localctx, 168, RULE_tupleSelector);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(1054);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__24) {
{
setState(1053);
match(T__24);
}
}
setState(1056);
match(T__13);
setState(1066);
_errHandler.sync(this);
switch (_input.LA(1)) {
case T__10:
{
setState(1057);
match(T__10);
}
break;
case T__0:
case T__1:
case T__2:
case T__3:
case T__4:
case T__5:
case T__6:
case T__7:
case T__8:
case T__9:
case T__11:
case T__12:
case T__17:
case T__19:
case T__26:
case T__27:
case T__28:
case T__29:
case T__44:
case T__49:
case T__51:
case T__52:
case T__53:
case T__54:
case T__55:
case T__73:
case T__75:
case T__76:
case T__78:
case T__79:
case T__80:
case T__89:
case T__90:
case T__91:
case T__92:
case T__105:
case T__106:
case T__108:
case T__109:
case T__110:
case T__118:
case T__119:
case T__130:
case T__131:
case T__132:
case T__133:
case T__140:
case T__141:
case T__144:
case T__148:
case T__149:
case T__153:
case QUOTEDIDENTIFIER:
case IDENTIFIER:
case DELIMITEDIDENTIFIER:
{
{
setState(1058);
tupleElementSelector();
setState(1063);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__14) {
{
{
setState(1059);
match(T__14);
setState(1060);
tupleElementSelector();
}
}
setState(1065);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
}
break;
default:
throw new NoViableAltException(this);
}
setState(1068);
match(T__15);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class TupleElementSelectorContext extends ParserRuleContext {
public ReferentialIdentifierContext referentialIdentifier() {
return getRuleContext(ReferentialIdentifierContext.class,0);
}
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public TupleElementSelectorContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_tupleElementSelector; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTupleElementSelector(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTupleElementSelector(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTupleElementSelector(this);
else return visitor.visitChildren(this);
}
}
public final TupleElementSelectorContext tupleElementSelector() throws RecognitionException {
TupleElementSelectorContext _localctx = new TupleElementSelectorContext(_ctx, getState());
enterRule(_localctx, 170, RULE_tupleElementSelector);
try {
enterOuterAlt(_localctx, 1);
{
setState(1070);
referentialIdentifier();
setState(1071);
match(T__10);
setState(1072);
expression(0);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class InstanceSelectorContext extends ParserRuleContext {
public NamedTypeSpecifierContext namedTypeSpecifier() {
return getRuleContext(NamedTypeSpecifierContext.class,0);
}
public List instanceElementSelector() {
return getRuleContexts(InstanceElementSelectorContext.class);
}
public InstanceElementSelectorContext instanceElementSelector(int i) {
return getRuleContext(InstanceElementSelectorContext.class,i);
}
public InstanceSelectorContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_instanceSelector; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterInstanceSelector(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitInstanceSelector(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitInstanceSelector(this);
else return visitor.visitChildren(this);
}
}
public final InstanceSelectorContext instanceSelector() throws RecognitionException {
InstanceSelectorContext _localctx = new InstanceSelectorContext(_ctx, getState());
enterRule(_localctx, 172, RULE_instanceSelector);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(1074);
namedTypeSpecifier();
setState(1075);
match(T__13);
setState(1085);
_errHandler.sync(this);
switch (_input.LA(1)) {
case T__10:
{
setState(1076);
match(T__10);
}
break;
case T__0:
case T__1:
case T__2:
case T__3:
case T__4:
case T__5:
case T__6:
case T__7:
case T__8:
case T__9:
case T__11:
case T__12:
case T__17:
case T__19:
case T__26:
case T__27:
case T__28:
case T__29:
case T__44:
case T__49:
case T__51:
case T__52:
case T__53:
case T__54:
case T__55:
case T__73:
case T__75:
case T__76:
case T__78:
case T__79:
case T__80:
case T__89:
case T__90:
case T__91:
case T__92:
case T__105:
case T__106:
case T__108:
case T__109:
case T__110:
case T__118:
case T__119:
case T__130:
case T__131:
case T__132:
case T__133:
case T__140:
case T__141:
case T__144:
case T__148:
case T__149:
case T__153:
case QUOTEDIDENTIFIER:
case IDENTIFIER:
case DELIMITEDIDENTIFIER:
{
{
setState(1077);
instanceElementSelector();
setState(1082);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__14) {
{
{
setState(1078);
match(T__14);
setState(1079);
instanceElementSelector();
}
}
setState(1084);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
}
break;
default:
throw new NoViableAltException(this);
}
setState(1087);
match(T__15);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class InstanceElementSelectorContext extends ParserRuleContext {
public ReferentialIdentifierContext referentialIdentifier() {
return getRuleContext(ReferentialIdentifierContext.class,0);
}
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public InstanceElementSelectorContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_instanceElementSelector; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterInstanceElementSelector(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitInstanceElementSelector(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitInstanceElementSelector(this);
else return visitor.visitChildren(this);
}
}
public final InstanceElementSelectorContext instanceElementSelector() throws RecognitionException {
InstanceElementSelectorContext _localctx = new InstanceElementSelectorContext(_ctx, getState());
enterRule(_localctx, 174, RULE_instanceElementSelector);
try {
enterOuterAlt(_localctx, 1);
{
setState(1089);
referentialIdentifier();
setState(1090);
match(T__10);
setState(1091);
expression(0);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ListSelectorContext extends ParserRuleContext {
public List expression() {
return getRuleContexts(ExpressionContext.class);
}
public ExpressionContext expression(int i) {
return getRuleContext(ExpressionContext.class,i);
}
public TypeSpecifierContext typeSpecifier() {
return getRuleContext(TypeSpecifierContext.class,0);
}
public ListSelectorContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_listSelector; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterListSelector(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitListSelector(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitListSelector(this);
else return visitor.visitChildren(this);
}
}
public final ListSelectorContext listSelector() throws RecognitionException {
ListSelectorContext _localctx = new ListSelectorContext(_ctx, getState());
enterRule(_localctx, 176, RULE_listSelector);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(1100);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__20) {
{
setState(1093);
match(T__20);
setState(1098);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__21) {
{
setState(1094);
match(T__21);
setState(1095);
typeSpecifier();
setState(1096);
match(T__22);
}
}
}
}
setState(1102);
match(T__13);
setState(1111);
_errHandler.sync(this);
_la = _input.LA(1);
if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -4758861967782021122L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1905040784319597519L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 549753872505L) != 0)) {
{
setState(1103);
expression(0);
setState(1108);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__14) {
{
{
setState(1104);
match(T__14);
setState(1105);
expression(0);
}
}
setState(1110);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
}
setState(1113);
match(T__15);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class DisplayClauseContext extends ParserRuleContext {
public TerminalNode STRING() { return getToken(cqlParser.STRING, 0); }
public DisplayClauseContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_displayClause; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterDisplayClause(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitDisplayClause(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitDisplayClause(this);
else return visitor.visitChildren(this);
}
}
public final DisplayClauseContext displayClause() throws RecognitionException {
DisplayClauseContext _localctx = new DisplayClauseContext(_ctx, getState());
enterRule(_localctx, 178, RULE_displayClause);
try {
enterOuterAlt(_localctx, 1);
{
setState(1115);
match(T__153);
setState(1116);
match(STRING);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class CodeSelectorContext extends ParserRuleContext {
public TerminalNode STRING() { return getToken(cqlParser.STRING, 0); }
public CodesystemIdentifierContext codesystemIdentifier() {
return getRuleContext(CodesystemIdentifierContext.class,0);
}
public DisplayClauseContext displayClause() {
return getRuleContext(DisplayClauseContext.class,0);
}
public CodeSelectorContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_codeSelector; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterCodeSelector(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitCodeSelector(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitCodeSelector(this);
else return visitor.visitChildren(this);
}
}
public final CodeSelectorContext codeSelector() throws RecognitionException {
CodeSelectorContext _localctx = new CodeSelectorContext(_ctx, getState());
enterRule(_localctx, 180, RULE_codeSelector);
try {
enterOuterAlt(_localctx, 1);
{
setState(1118);
match(T__154);
setState(1119);
match(STRING);
setState(1120);
match(T__18);
setState(1121);
codesystemIdentifier();
setState(1123);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,124,_ctx) ) {
case 1:
{
setState(1122);
displayClause();
}
break;
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ConceptSelectorContext extends ParserRuleContext {
public List codeSelector() {
return getRuleContexts(CodeSelectorContext.class);
}
public CodeSelectorContext codeSelector(int i) {
return getRuleContext(CodeSelectorContext.class,i);
}
public DisplayClauseContext displayClause() {
return getRuleContext(DisplayClauseContext.class,0);
}
public ConceptSelectorContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_conceptSelector; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterConceptSelector(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitConceptSelector(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitConceptSelector(this);
else return visitor.visitChildren(this);
}
}
public final ConceptSelectorContext conceptSelector() throws RecognitionException {
ConceptSelectorContext _localctx = new ConceptSelectorContext(_ctx, getState());
enterRule(_localctx, 182, RULE_conceptSelector);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(1125);
match(T__155);
setState(1126);
match(T__13);
setState(1127);
codeSelector();
setState(1132);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__14) {
{
{
setState(1128);
match(T__14);
setState(1129);
codeSelector();
}
}
setState(1134);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(1135);
match(T__15);
setState(1137);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,126,_ctx) ) {
case 1:
{
setState(1136);
displayClause();
}
break;
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class KeywordContext extends ParserRuleContext {
public KeywordContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_keyword; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterKeyword(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitKeyword(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitKeyword(this);
else return visitor.visitChildren(this);
}
}
public final KeywordContext keyword() throws RecognitionException {
KeywordContext _localctx = new KeywordContext(_ctx, getState());
enterRule(_localctx, 184, RULE_keyword);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(1139);
_la = _input.LA(1);
if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & -15150577076226L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -175643684002350017L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 478150271L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ReservedWordContext extends ParserRuleContext {
public ReservedWordContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_reservedWord; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterReservedWord(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitReservedWord(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitReservedWord(this);
else return visitor.visitChildren(this);
}
}
public final ReservedWordContext reservedWord() throws RecognitionException {
ReservedWordContext _localctx = new ReservedWordContext(_ctx, getState());
enterRule(_localctx, 186, RULE_reservedWord);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(1141);
_la = _input.LA(1);
if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & -140787825319084032L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -283989560810272705L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 404594183L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class KeywordIdentifierContext extends ParserRuleContext {
public KeywordIdentifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_keywordIdentifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterKeywordIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitKeywordIdentifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitKeywordIdentifier(this);
else return visitor.visitChildren(this);
}
}
public final KeywordIdentifierContext keywordIdentifier() throws RecognitionException {
KeywordIdentifierContext _localctx = new KeywordIdentifierContext(_ctx, getState());
enterRule(_localctx, 188, RULE_keywordIdentifier);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(1143);
_la = _input.LA(1);
if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & 140772674742007806L) != 0) || ((((_la - 74)) & ~0x3f) == 0 && ((1L << (_la - 74)) & 2161833627658158317L) != 0) || ((((_la - 141)) & ~0x3f) == 0 && ((1L << (_la - 141)) & 8979L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ObsoleteIdentifierContext extends ParserRuleContext {
public ObsoleteIdentifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_obsoleteIdentifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterObsoleteIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitObsoleteIdentifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitObsoleteIdentifier(this);
else return visitor.visitChildren(this);
}
}
public final ObsoleteIdentifierContext obsoleteIdentifier() throws RecognitionException {
ObsoleteIdentifierContext _localctx = new ObsoleteIdentifierContext(_ctx, getState());
enterRule(_localctx, 190, RULE_obsoleteIdentifier);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(1145);
_la = _input.LA(1);
if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & 288687772990177284L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & 13195146167297L) != 0) || ((((_la - 154)) & ~0x3f) == 0 && ((1L << (_la - 154)) & 7L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class FunctionIdentifierContext extends ParserRuleContext {
public FunctionIdentifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_functionIdentifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterFunctionIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitFunctionIdentifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitFunctionIdentifier(this);
else return visitor.visitChildren(this);
}
}
public final FunctionIdentifierContext functionIdentifier() throws RecognitionException {
FunctionIdentifierContext _localctx = new FunctionIdentifierContext(_ctx, getState());
enterRule(_localctx, 192, RULE_functionIdentifier);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(1147);
_la = _input.LA(1);
if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & -15150577076226L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -175643684002350017L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 478145663L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class TypeNameIdentifierContext extends ParserRuleContext {
public TypeNameIdentifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_typeNameIdentifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterTypeNameIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitTypeNameIdentifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitTypeNameIdentifier(this);
else return visitor.visitChildren(this);
}
}
public final TypeNameIdentifierContext typeNameIdentifier() throws RecognitionException {
TypeNameIdentifierContext _localctx = new TypeNameIdentifierContext(_ctx, getState());
enterRule(_localctx, 194, RULE_typeNameIdentifier);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(1149);
_la = _input.LA(1);
if ( !(_la==T__89 || _la==T__90 || _la==T__154 || _la==T__155) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ReferentialIdentifierContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public KeywordIdentifierContext keywordIdentifier() {
return getRuleContext(KeywordIdentifierContext.class,0);
}
public ReferentialIdentifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_referentialIdentifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterReferentialIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitReferentialIdentifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitReferentialIdentifier(this);
else return visitor.visitChildren(this);
}
}
public final ReferentialIdentifierContext referentialIdentifier() throws RecognitionException {
ReferentialIdentifierContext _localctx = new ReferentialIdentifierContext(_ctx, getState());
enterRule(_localctx, 196, RULE_referentialIdentifier);
try {
setState(1153);
_errHandler.sync(this);
switch (_input.LA(1)) {
case QUOTEDIDENTIFIER:
case IDENTIFIER:
case DELIMITEDIDENTIFIER:
enterOuterAlt(_localctx, 1);
{
setState(1151);
identifier();
}
break;
case T__0:
case T__1:
case T__2:
case T__3:
case T__4:
case T__5:
case T__6:
case T__7:
case T__8:
case T__9:
case T__11:
case T__12:
case T__17:
case T__19:
case T__26:
case T__27:
case T__28:
case T__29:
case T__44:
case T__49:
case T__51:
case T__52:
case T__53:
case T__54:
case T__55:
case T__73:
case T__75:
case T__76:
case T__78:
case T__79:
case T__80:
case T__89:
case T__90:
case T__91:
case T__92:
case T__105:
case T__106:
case T__108:
case T__109:
case T__110:
case T__118:
case T__119:
case T__130:
case T__131:
case T__132:
case T__133:
case T__140:
case T__141:
case T__144:
case T__148:
case T__149:
case T__153:
enterOuterAlt(_localctx, 2);
{
setState(1152);
keywordIdentifier();
}
break;
default:
throw new NoViableAltException(this);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ReferentialOrTypeNameIdentifierContext extends ParserRuleContext {
public ReferentialIdentifierContext referentialIdentifier() {
return getRuleContext(ReferentialIdentifierContext.class,0);
}
public TypeNameIdentifierContext typeNameIdentifier() {
return getRuleContext(TypeNameIdentifierContext.class,0);
}
public ReferentialOrTypeNameIdentifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_referentialOrTypeNameIdentifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterReferentialOrTypeNameIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitReferentialOrTypeNameIdentifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitReferentialOrTypeNameIdentifier(this);
else return visitor.visitChildren(this);
}
}
public final ReferentialOrTypeNameIdentifierContext referentialOrTypeNameIdentifier() throws RecognitionException {
ReferentialOrTypeNameIdentifierContext _localctx = new ReferentialOrTypeNameIdentifierContext(_ctx, getState());
enterRule(_localctx, 198, RULE_referentialOrTypeNameIdentifier);
try {
setState(1157);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,128,_ctx) ) {
case 1:
enterOuterAlt(_localctx, 1);
{
setState(1155);
referentialIdentifier();
}
break;
case 2:
enterOuterAlt(_localctx, 2);
{
setState(1156);
typeNameIdentifier();
}
break;
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class IdentifierOrFunctionIdentifierContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public FunctionIdentifierContext functionIdentifier() {
return getRuleContext(FunctionIdentifierContext.class,0);
}
public IdentifierOrFunctionIdentifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_identifierOrFunctionIdentifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterIdentifierOrFunctionIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitIdentifierOrFunctionIdentifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitIdentifierOrFunctionIdentifier(this);
else return visitor.visitChildren(this);
}
}
public final IdentifierOrFunctionIdentifierContext identifierOrFunctionIdentifier() throws RecognitionException {
IdentifierOrFunctionIdentifierContext _localctx = new IdentifierOrFunctionIdentifierContext(_ctx, getState());
enterRule(_localctx, 200, RULE_identifierOrFunctionIdentifier);
try {
setState(1161);
_errHandler.sync(this);
switch (_input.LA(1)) {
case QUOTEDIDENTIFIER:
case IDENTIFIER:
case DELIMITEDIDENTIFIER:
enterOuterAlt(_localctx, 1);
{
setState(1159);
identifier();
}
break;
case T__0:
case T__1:
case T__2:
case T__3:
case T__4:
case T__5:
case T__6:
case T__7:
case T__8:
case T__9:
case T__11:
case T__12:
case T__17:
case T__18:
case T__19:
case T__20:
case T__23:
case T__24:
case T__26:
case T__27:
case T__28:
case T__29:
case T__34:
case T__35:
case T__36:
case T__40:
case T__43:
case T__44:
case T__45:
case T__46:
case T__47:
case T__48:
case T__49:
case T__50:
case T__51:
case T__52:
case T__53:
case T__54:
case T__55:
case T__56:
case T__57:
case T__58:
case T__59:
case T__60:
case T__61:
case T__62:
case T__63:
case T__64:
case T__65:
case T__66:
case T__67:
case T__68:
case T__73:
case T__74:
case T__75:
case T__76:
case T__78:
case T__79:
case T__80:
case T__81:
case T__82:
case T__83:
case T__84:
case T__85:
case T__86:
case T__87:
case T__88:
case T__89:
case T__90:
case T__91:
case T__92:
case T__93:
case T__94:
case T__95:
case T__96:
case T__97:
case T__98:
case T__99:
case T__100:
case T__101:
case T__102:
case T__105:
case T__106:
case T__107:
case T__108:
case T__109:
case T__110:
case T__111:
case T__112:
case T__113:
case T__114:
case T__118:
case T__119:
case T__121:
case T__122:
case T__123:
case T__124:
case T__125:
case T__126:
case T__127:
case T__128:
case T__129:
case T__130:
case T__131:
case T__132:
case T__133:
case T__137:
case T__138:
case T__140:
case T__141:
case T__142:
case T__143:
case T__144:
case T__145:
case T__146:
case T__147:
case T__148:
case T__149:
case T__153:
case T__154:
case T__155:
enterOuterAlt(_localctx, 2);
{
setState(1160);
functionIdentifier();
}
break;
default:
throw new NoViableAltException(this);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class IdentifierContext extends ParserRuleContext {
public TerminalNode IDENTIFIER() { return getToken(cqlParser.IDENTIFIER, 0); }
public TerminalNode DELIMITEDIDENTIFIER() { return getToken(cqlParser.DELIMITEDIDENTIFIER, 0); }
public TerminalNode QUOTEDIDENTIFIER() { return getToken(cqlParser.QUOTEDIDENTIFIER, 0); }
public IdentifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_identifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitIdentifier(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitIdentifier(this);
else return visitor.visitChildren(this);
}
}
public final IdentifierContext identifier() throws RecognitionException {
IdentifierContext _localctx = new IdentifierContext(_ctx, getState());
enterRule(_localctx, 202, RULE_identifier);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(1163);
_la = _input.LA(1);
if ( !(((((_la - 158)) & ~0x3f) == 0 && ((1L << (_la - 158)) & 97L) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ExternalConstantContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public TerminalNode STRING() { return getToken(cqlParser.STRING, 0); }
public ExternalConstantContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_externalConstant; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterExternalConstant(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitExternalConstant(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitExternalConstant(this);
else return visitor.visitChildren(this);
}
}
public final ExternalConstantContext externalConstant() throws RecognitionException {
ExternalConstantContext _localctx = new ExternalConstantContext(_ctx, getState());
enterRule(_localctx, 204, RULE_externalConstant);
try {
enterOuterAlt(_localctx, 1);
{
setState(1165);
match(T__156);
setState(1168);
_errHandler.sync(this);
switch (_input.LA(1)) {
case QUOTEDIDENTIFIER:
case IDENTIFIER:
case DELIMITEDIDENTIFIER:
{
setState(1166);
identifier();
}
break;
case STRING:
{
setState(1167);
match(STRING);
}
break;
default:
throw new NoViableAltException(this);
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class ParamListContext extends ParserRuleContext {
public List expression() {
return getRuleContexts(ExpressionContext.class);
}
public ExpressionContext expression(int i) {
return getRuleContext(ExpressionContext.class,i);
}
public ParamListContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_paramList; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterParamList(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitParamList(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitParamList(this);
else return visitor.visitChildren(this);
}
}
public final ParamListContext paramList() throws RecognitionException {
ParamListContext _localctx = new ParamListContext(_ctx, getState());
enterRule(_localctx, 206, RULE_paramList);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(1170);
expression(0);
setState(1175);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__14) {
{
{
setState(1171);
match(T__14);
setState(1172);
expression(0);
}
}
setState(1177);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class QuantityContext extends ParserRuleContext {
public TerminalNode NUMBER() { return getToken(cqlParser.NUMBER, 0); }
public UnitContext unit() {
return getRuleContext(UnitContext.class,0);
}
public QuantityContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_quantity; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterQuantity(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitQuantity(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitQuantity(this);
else return visitor.visitChildren(this);
}
}
public final QuantityContext quantity() throws RecognitionException {
QuantityContext _localctx = new QuantityContext(_ctx, getState());
enterRule(_localctx, 208, RULE_quantity);
try {
enterOuterAlt(_localctx, 1);
{
setState(1178);
match(NUMBER);
setState(1180);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,132,_ctx) ) {
case 1:
{
setState(1179);
unit();
}
break;
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
@SuppressWarnings("CheckReturnValue")
public static class UnitContext extends ParserRuleContext {
public DateTimePrecisionContext dateTimePrecision() {
return getRuleContext(DateTimePrecisionContext.class,0);
}
public PluralDateTimePrecisionContext pluralDateTimePrecision() {
return getRuleContext(PluralDateTimePrecisionContext.class,0);
}
public TerminalNode STRING() { return getToken(cqlParser.STRING, 0); }
public UnitContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_unit; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).enterUnit(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof cqlListener ) ((cqlListener)listener).exitUnit(this);
}
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof cqlVisitor ) return ((cqlVisitor extends T>)visitor).visitUnit(this);
else return visitor.visitChildren(this);
}
}
public final UnitContext unit() throws RecognitionException {
UnitContext _localctx = new UnitContext(_ctx, getState());
enterRule(_localctx, 210, RULE_unit);
try {
setState(1185);
_errHandler.sync(this);
switch (_input.LA(1)) {
case T__81:
case T__82:
case T__83:
case T__84:
case T__85:
case T__86:
case T__87:
case T__88:
enterOuterAlt(_localctx, 1);
{
setState(1182);
dateTimePrecision();
}
break;
case T__93:
case T__94:
case T__95:
case T__96:
case T__97:
case T__98:
case T__99:
case T__100:
enterOuterAlt(_localctx, 2);
{
setState(1183);
pluralDateTimePrecision();
}
break;
case STRING:
enterOuterAlt(_localctx, 3);
{
setState(1184);
match(STRING);
}
break;
default:
throw new NoViableAltException(this);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public boolean sempred(RuleContext _localctx, int ruleIndex, int predIndex) {
switch (ruleIndex) {
case 61:
return simplePath_sempred((SimplePathContext)_localctx, predIndex);
case 63:
return expression_sempred((ExpressionContext)_localctx, predIndex);
case 67:
return expressionTerm_sempred((ExpressionTermContext)_localctx, predIndex);
}
return true;
}
private boolean simplePath_sempred(SimplePathContext _localctx, int predIndex) {
switch (predIndex) {
case 0:
return precpred(_ctx, 2);
case 1:
return precpred(_ctx, 1);
}
return true;
}
private boolean expression_sempred(ExpressionContext _localctx, int predIndex) {
switch (predIndex) {
case 2:
return precpred(_ctx, 8);
case 3:
return precpred(_ctx, 7);
case 4:
return precpred(_ctx, 6);
case 5:
return precpred(_ctx, 5);
case 6:
return precpred(_ctx, 4);
case 7:
return precpred(_ctx, 3);
case 8:
return precpred(_ctx, 2);
case 9:
return precpred(_ctx, 1);
case 10:
return precpred(_ctx, 16);
case 11:
return precpred(_ctx, 15);
case 12:
return precpred(_ctx, 11);
}
return true;
}
private boolean expressionTerm_sempred(ExpressionTermContext _localctx, int predIndex) {
switch (predIndex) {
case 13:
return precpred(_ctx, 7);
case 14:
return precpred(_ctx, 6);
case 15:
return precpred(_ctx, 5);
case 16:
return precpred(_ctx, 21);
case 17:
return precpred(_ctx, 20);
}
return true;
}
public static final String _serializedATN =
"\u0004\u0001\u00a9\u04a4\u0002\u0000\u0007\u0000\u0002\u0001\u0007\u0001"+
"\u0002\u0002\u0007\u0002\u0002\u0003\u0007\u0003\u0002\u0004\u0007\u0004"+
"\u0002\u0005\u0007\u0005\u0002\u0006\u0007\u0006\u0002\u0007\u0007\u0007"+
"\u0002\b\u0007\b\u0002\t\u0007\t\u0002\n\u0007\n\u0002\u000b\u0007\u000b"+
"\u0002\f\u0007\f\u0002\r\u0007\r\u0002\u000e\u0007\u000e\u0002\u000f\u0007"+
"\u000f\u0002\u0010\u0007\u0010\u0002\u0011\u0007\u0011\u0002\u0012\u0007"+
"\u0012\u0002\u0013\u0007\u0013\u0002\u0014\u0007\u0014\u0002\u0015\u0007"+
"\u0015\u0002\u0016\u0007\u0016\u0002\u0017\u0007\u0017\u0002\u0018\u0007"+
"\u0018\u0002\u0019\u0007\u0019\u0002\u001a\u0007\u001a\u0002\u001b\u0007"+
"\u001b\u0002\u001c\u0007\u001c\u0002\u001d\u0007\u001d\u0002\u001e\u0007"+
"\u001e\u0002\u001f\u0007\u001f\u0002 \u0007 \u0002!\u0007!\u0002\"\u0007"+
"\"\u0002#\u0007#\u0002$\u0007$\u0002%\u0007%\u0002&\u0007&\u0002\'\u0007"+
"\'\u0002(\u0007(\u0002)\u0007)\u0002*\u0007*\u0002+\u0007+\u0002,\u0007"+
",\u0002-\u0007-\u0002.\u0007.\u0002/\u0007/\u00020\u00070\u00021\u0007"+
"1\u00022\u00072\u00023\u00073\u00024\u00074\u00025\u00075\u00026\u0007"+
"6\u00027\u00077\u00028\u00078\u00029\u00079\u0002:\u0007:\u0002;\u0007"+
";\u0002<\u0007<\u0002=\u0007=\u0002>\u0007>\u0002?\u0007?\u0002@\u0007"+
"@\u0002A\u0007A\u0002B\u0007B\u0002C\u0007C\u0002D\u0007D\u0002E\u0007"+
"E\u0002F\u0007F\u0002G\u0007G\u0002H\u0007H\u0002I\u0007I\u0002J\u0007"+
"J\u0002K\u0007K\u0002L\u0007L\u0002M\u0007M\u0002N\u0007N\u0002O\u0007"+
"O\u0002P\u0007P\u0002Q\u0007Q\u0002R\u0007R\u0002S\u0007S\u0002T\u0007"+
"T\u0002U\u0007U\u0002V\u0007V\u0002W\u0007W\u0002X\u0007X\u0002Y\u0007"+
"Y\u0002Z\u0007Z\u0002[\u0007[\u0002\\\u0007\\\u0002]\u0007]\u0002^\u0007"+
"^\u0002_\u0007_\u0002`\u0007`\u0002a\u0007a\u0002b\u0007b\u0002c\u0007"+
"c\u0002d\u0007d\u0002e\u0007e\u0002f\u0007f\u0002g\u0007g\u0002h\u0007"+
"h\u0002i\u0007i\u0001\u0000\u0001\u0000\u0001\u0000\u0001\u0000\u0001"+
"\u0000\u0001\u0000\u0001\u0000\u0003\u0000\u00dc\b\u0000\u0001\u0001\u0003"+
"\u0001\u00df\b\u0001\u0001\u0001\u0005\u0001\u00e2\b\u0001\n\u0001\f\u0001"+
"\u00e5\t\u0001\u0001\u0001\u0005\u0001\u00e8\b\u0001\n\u0001\f\u0001\u00eb"+
"\t\u0001\u0001\u0001\u0001\u0001\u0001\u0002\u0001\u0002\u0001\u0002\u0001"+
"\u0002\u0003\u0002\u00f3\b\u0002\u0001\u0003\u0001\u0003\u0001\u0003\u0001"+
"\u0003\u0003\u0003\u00f9\b\u0003\u0001\u0003\u0001\u0003\u0003\u0003\u00fd"+
"\b\u0003\u0001\u0004\u0001\u0004\u0001\u0004\u0001\u0004\u0003\u0004\u0103"+
"\b\u0004\u0001\u0004\u0001\u0004\u0003\u0004\u0107\b\u0004\u0001\u0005"+
"\u0001\u0005\u0001\u0006\u0001\u0006\u0001\u0007\u0003\u0007\u010e\b\u0007"+
"\u0001\u0007\u0001\u0007\u0001\u0007\u0003\u0007\u0113\b\u0007\u0001\u0007"+
"\u0001\u0007\u0003\u0007\u0117\b\u0007\u0001\b\u0003\b\u011a\b\b\u0001"+
"\b\u0001\b\u0001\b\u0001\b\u0001\b\u0001\b\u0003\b\u0122\b\b\u0001\t\u0003"+
"\t\u0125\b\t\u0001\t\u0001\t\u0001\t\u0001\t\u0001\t\u0001\t\u0003\t\u012d"+
"\b\t\u0001\t\u0003\t\u0130\b\t\u0001\n\u0001\n\u0001\n\u0001\n\u0001\n"+
"\u0005\n\u0137\b\n\n\n\f\n\u013a\t\n\u0001\n\u0001\n\u0001\u000b\u0001"+
"\u000b\u0001\u000b\u0003\u000b\u0141\b\u000b\u0001\u000b\u0001\u000b\u0001"+
"\f\u0001\f\u0001\r\u0003\r\u0148\b\r\u0001\r\u0001\r\u0001\r\u0001\r\u0001"+
"\r\u0001\r\u0001\r\u0003\r\u0151\b\r\u0001\u000e\u0003\u000e\u0154\b\u000e"+
"\u0001\u000e\u0001\u000e\u0001\u000e\u0001\u000e\u0001\u000e\u0001\u000e"+
"\u0001\u000e\u0005\u000e\u015d\b\u000e\n\u000e\f\u000e\u0160\t\u000e\u0001"+
"\u000e\u0001\u000e\u0003\u000e\u0164\b\u000e\u0001\u000f\u0001\u000f\u0001"+
"\u000f\u0003\u000f\u0169\b\u000f\u0001\u000f\u0001\u000f\u0001\u0010\u0001"+
"\u0010\u0001\u0011\u0001\u0011\u0001\u0012\u0001\u0012\u0001\u0013\u0001"+
"\u0013\u0001\u0014\u0001\u0014\u0001\u0014\u0001\u0014\u0001\u0014\u0003"+
"\u0014\u017a\b\u0014\u0001\u0015\u0001\u0015\u0001\u0015\u0005\u0015\u017f"+
"\b\u0015\n\u0015\f\u0015\u0182\t\u0015\u0001\u0015\u0001\u0015\u0001\u0016"+
"\u0001\u0016\u0001\u0017\u0001\u0017\u0001\u0017\u0001\u0017\u0001\u0017"+
"\u0001\u0018\u0001\u0018\u0001\u0018\u0001\u0018\u0001\u0018\u0001\u0019"+
"\u0001\u0019\u0001\u0019\u0001\u0019\u0001\u0019\u0005\u0019\u0197\b\u0019"+
"\n\u0019\f\u0019\u019a\t\u0019\u0001\u0019\u0001\u0019\u0001\u001a\u0001"+
"\u001a\u0001\u001a\u0001\u001b\u0001\u001b\u0001\u001b\u0001\u001b\u0001"+
"\u001b\u0005\u001b\u01a6\b\u001b\n\u001b\f\u001b\u01a9\t\u001b\u0001\u001b"+
"\u0001\u001b\u0001\u001c\u0001\u001c\u0001\u001c\u0003\u001c\u01b0\b\u001c"+
"\u0001\u001d\u0001\u001d\u0003\u001d\u01b4\b\u001d\u0001\u001d\u0001\u001d"+
"\u0001\u001d\u0001\u001d\u0001\u001e\u0001\u001e\u0001\u001e\u0001\u001e"+
"\u0003\u001e\u01be\b\u001e\u0001\u001e\u0001\u001e\u0001\u001f\u0001\u001f"+
"\u0001 \u0001 \u0003 \u01c6\b \u0001 \u0003 \u01c9\b \u0001 \u0001 \u0001"+
" \u0001 \u0001 \u0001 \u0005 \u01d1\b \n \f \u01d4\t \u0003 \u01d6\b "+
"\u0001 \u0001 \u0001 \u0003 \u01db\b \u0001 \u0001 \u0001 \u0003 \u01e0"+
"\b \u0001!\u0001!\u0001!\u0001\"\u0001\"\u0001#\u0001#\u0001#\u0001#\u0001"+
"#\u0001#\u0003#\u01ed\b#\u0001$\u0001$\u0001$\u0001%\u0001%\u0001&\u0001"+
"&\u0003&\u01f6\b&\u0001\'\u0001\'\u0001\'\u0001\'\u0001\'\u0001(\u0001"+
"(\u0001(\u0001(\u0001(\u0001)\u0001)\u0001)\u0001)\u0003)\u0206\b)\u0001"+
")\u0001)\u0001)\u0001)\u0001)\u0003)\u020d\b)\u0001)\u0003)\u0210\b)\u0001"+
")\u0001)\u0001*\u0001*\u0001+\u0001+\u0001,\u0001,\u0001-\u0001-\u0003"+
"-\u021c\b-\u0001.\u0001.\u0001/\u0001/\u0003/\u0222\b/\u0001/\u0005/\u0225"+
"\b/\n/\f/\u0228\t/\u0001/\u0003/\u022b\b/\u0001/\u0001/\u0003/\u022f\b"+
"/\u0001/\u0003/\u0232\b/\u00010\u00030\u0235\b0\u00010\u00010\u00010\u0005"+
"0\u023a\b0\n0\f0\u023d\t0\u00011\u00011\u00011\u00011\u00051\u0243\b1"+
"\n1\f1\u0246\t1\u00012\u00012\u00012\u00012\u00013\u00013\u00013\u0001"+
"4\u00014\u00034\u0251\b4\u00014\u00014\u00015\u00015\u00035\u0257\b5\u0001"+
"5\u00015\u00035\u025b\b5\u00015\u00015\u00015\u00016\u00016\u00016\u0001"+
"6\u00016\u00016\u00016\u00036\u0267\b6\u00017\u00017\u00017\u00017\u0001"+
"7\u00017\u00057\u026f\b7\n7\f7\u0272\t7\u00037\u0274\b7\u00018\u00018"+
"\u00019\u00019\u00039\u027a\b9\u0001:\u0001:\u0001:\u0005:\u027f\b:\n"+
":\f:\u0282\t:\u0001:\u0001:\u0001;\u0001;\u0001;\u0005;\u0289\b;\n;\f"+
";\u028c\t;\u0001;\u0001;\u0001<\u0001<\u0001=\u0001=\u0001=\u0001=\u0001"+
"=\u0001=\u0001=\u0001=\u0001=\u0001=\u0001=\u0005=\u029d\b=\n=\f=\u02a0"+
"\t=\u0001>\u0001>\u0003>\u02a4\b>\u0001?\u0001?\u0001?\u0001?\u0001?\u0001"+
"?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0003"+
"?\u02b5\b?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001"+
"?\u0001?\u0001?\u0001?\u0001?\u0001?\u0003?\u02c5\b?\u0001?\u0001?\u0001"+
"?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001"+
"?\u0003?\u02d4\b?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001"+
"?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0003?\u02e6"+
"\b?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0003?\u02ee\b?\u0001?\u0001"+
"?\u0001?\u0001?\u0001?\u0005?\u02f5\b?\n?\f?\u02f8\t?\u0001@\u0001@\u0001"+
"A\u0001A\u0001A\u0001A\u0001A\u0003A\u0301\bA\u0001B\u0001B\u0001C\u0001"+
"C\u0001C\u0001C\u0001C\u0001C\u0001C\u0003C\u030c\bC\u0001C\u0001C\u0001"+
"C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001"+
"C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001"+
"C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001"+
"C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001"+
"C\u0001C\u0001C\u0001C\u0001C\u0003C\u033d\bC\u0001C\u0004C\u0340\bC\u000b"+
"C\fC\u0341\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001"+
"C\u0001C\u0001C\u0003C\u034f\bC\u0003C\u0351\bC\u0003C\u0353\bC\u0001"+
"C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001"+
"C\u0001C\u0001C\u0001C\u0001C\u0001C\u0001C\u0005C\u0366\bC\nC\fC\u0369"+
"\tC\u0001D\u0001D\u0001D\u0001D\u0001D\u0001E\u0001E\u0001E\u0001F\u0001"+
"F\u0001G\u0001G\u0001H\u0001H\u0001I\u0001I\u0003I\u037b\bI\u0001I\u0001"+
"I\u0001I\u0003I\u0380\bI\u0001J\u0003J\u0383\bJ\u0001J\u0001J\u0001J\u0003"+
"J\u0388\bJ\u0003J\u038a\bJ\u0001K\u0003K\u038d\bK\u0001K\u0001K\u0003"+
"K\u0391\bK\u0001K\u0001K\u0003K\u0395\bK\u0001K\u0003K\u0398\bK\u0001"+
"K\u0003K\u039b\bK\u0001K\u0001K\u0003K\u039f\bK\u0001K\u0003K\u03a2\b"+
"K\u0001K\u0003K\u03a5\bK\u0001K\u0003K\u03a8\bK\u0001K\u0001K\u0003K\u03ac"+
"\bK\u0001K\u0003K\u03af\bK\u0001K\u0003K\u03b2\bK\u0001K\u0001K\u0003"+
"K\u03b6\bK\u0001K\u0003K\u03b9\bK\u0001K\u0003K\u03bc\bK\u0001K\u0003"+
"K\u03bf\bK\u0001K\u0001K\u0001K\u0001K\u0003K\u03c5\bK\u0001K\u0001K\u0003"+
"K\u03c9\bK\u0001K\u0003K\u03cc\bK\u0001K\u0001K\u0003K\u03d0\bK\u0001"+
"K\u0003K\u03d3\bK\u0001K\u0001K\u0003K\u03d7\bK\u0001K\u0001K\u0003K\u03db"+
"\bK\u0003K\u03dd\bK\u0001L\u0001L\u0001L\u0001L\u0001L\u0001L\u0001L\u0001"+
"L\u0001L\u0001L\u0001L\u0001L\u0001L\u0003L\u03ec\bL\u0001M\u0001M\u0003"+
"M\u03f0\bM\u0001N\u0001N\u0001N\u0003N\u03f5\bN\u0001N\u0001N\u0001O\u0001"+
"O\u0001O\u0001O\u0001O\u0003O\u03fe\bO\u0001P\u0001P\u0001P\u0003P\u0403"+
"\bP\u0001P\u0001P\u0001Q\u0001Q\u0001Q\u0001Q\u0001R\u0001R\u0001R\u0001"+
"R\u0001R\u0001R\u0001R\u0001R\u0001R\u0001R\u0003R\u0415\bR\u0001S\u0001"+
"S\u0001S\u0001S\u0001S\u0001S\u0001S\u0001T\u0003T\u041f\bT\u0001T\u0001"+
"T\u0001T\u0001T\u0001T\u0005T\u0426\bT\nT\fT\u0429\tT\u0003T\u042b\bT"+
"\u0001T\u0001T\u0001U\u0001U\u0001U\u0001U\u0001V\u0001V\u0001V\u0001"+
"V\u0001V\u0001V\u0005V\u0439\bV\nV\fV\u043c\tV\u0003V\u043e\bV\u0001V"+
"\u0001V\u0001W\u0001W\u0001W\u0001W\u0001X\u0001X\u0001X\u0001X\u0001"+
"X\u0003X\u044b\bX\u0003X\u044d\bX\u0001X\u0001X\u0001X\u0001X\u0005X\u0453"+
"\bX\nX\fX\u0456\tX\u0003X\u0458\bX\u0001X\u0001X\u0001Y\u0001Y\u0001Y"+
"\u0001Z\u0001Z\u0001Z\u0001Z\u0001Z\u0003Z\u0464\bZ\u0001[\u0001[\u0001"+
"[\u0001[\u0001[\u0005[\u046b\b[\n[\f[\u046e\t[\u0001[\u0001[\u0003[\u0472"+
"\b[\u0001\\\u0001\\\u0001]\u0001]\u0001^\u0001^\u0001_\u0001_\u0001`\u0001"+
"`\u0001a\u0001a\u0001b\u0001b\u0003b\u0482\bb\u0001c\u0001c\u0003c\u0486"+
"\bc\u0001d\u0001d\u0003d\u048a\bd\u0001e\u0001e\u0001f\u0001f\u0001f\u0003"+
"f\u0491\bf\u0001g\u0001g\u0001g\u0005g\u0496\bg\ng\fg\u0499\tg\u0001h"+
"\u0001h\u0003h\u049d\bh\u0001i\u0001i\u0001i\u0003i\u04a2\bi\u0001i\u0000"+
"\u0003z~\u0086j\u0000\u0002\u0004\u0006\b\n\f\u000e\u0010\u0012\u0014"+
"\u0016\u0018\u001a\u001c\u001e \"$&(*,.02468:<>@BDFHJLNPRTVXZ\\^`bdfh"+
"jlnprtvxz|~\u0080\u0082\u0084\u0086\u0088\u008a\u008c\u008e\u0090\u0092"+
"\u0094\u0096\u0098\u009a\u009c\u009e\u00a0\u00a2\u00a4\u00a6\u00a8\u00aa"+
"\u00ac\u00ae\u00b0\u00b2\u00b4\u00b6\u00b8\u00ba\u00bc\u00be\u00c0\u00c2"+
"\u00c4\u00c6\u00c8\u00ca\u00cc\u00ce\u00d0\u00d2\u0000$\u0001\u0000\u0006"+
"\u0007\u0001\u0000)+\u0001\u0000/0\u0001\u000058\u0002\u0000\u0016\u0017"+
"FG\u0002\u0000*+HI\u0002\u0000))JJ\u0001\u0000KL\u0001\u0000NQ\u0001\u0000"+
";=\u0002\u000099>>\u0001\u0000RY\u0001\u0000^e\u0001\u0000hi\u0001\u0000"+
"jk\u0001\u0000rs\u0002\u000000~~\u0001\u0000\u007f\u0080\u0001\u0000u"+
"x\u0002\u0000hiyy\u0001\u0000\u0083\u0084\u0001\u0000\u0085\u0086\u0001"+
"\u0000\u0087\u0088\u0001\u0000\u008a\u008b\u0001\u0000\u008d\u008f\u0001"+
"\u0000\u0092\u0093\u0001\u0000<=\u0002\u0000\u001f\u001f&&\u0002\u0000"+
" ((\u000f\u0000\u0001\n\f\r\u0012\u0015\u0018\u0019\u001b\u001e#%)),"+
"EJMOgjswxz\u0086\u0089\u0096\u009a\u009c\u0013\u0000\u0013\u0013\u0015"+
"\u0015\u0018\u0019#%)),,.1339EKKRY^gllpsz\u0082\u0089\u008c\u008f\u0090"+
"\u0092\u0094\u009b\u009c\u0014\u0000\u0001\n\f\r\u0012\u0012\u0014\u0014"+
"\u001b\u001e--2248JJLMOQZ]jkmowx\u0083\u0086\u008d\u008e\u0091\u0091\u0095"+
"\u0096\u009a\u009a\u000b\u0000\u0002\u0002\u0012\u0012\u0014\u0014--/"+
"0::@@JJZ]jk\u009a\u009c\u0010\u0000\u0001\n\f\r\u0012\u0015\u0018\u0019"+
"\u001b\u001e#%)),EJMOgjswxz\u0086\u008a\u008b\u008d\u0096\u009a\u009c"+
"\u0002\u0000Z[\u009b\u009c\u0002\u0000\u009e\u009e\u00a3\u00a4\u050a\u0000"+
"\u00db\u0001\u0000\u0000\u0000\u0002\u00de\u0001\u0000\u0000\u0000\u0004"+
"\u00ee\u0001\u0000\u0000\u0000\u0006\u00f4\u0001\u0000\u0000\u0000\b\u00fe"+
"\u0001\u0000\u0000\u0000\n\u0108\u0001\u0000\u0000\u0000\f\u010a\u0001"+
"\u0000\u0000\u0000\u000e\u010d\u0001\u0000\u0000\u0000\u0010\u0119\u0001"+
"\u0000\u0000\u0000\u0012\u0124\u0001\u0000\u0000\u0000\u0014\u0131\u0001"+
"\u0000\u0000\u0000\u0016\u0140\u0001\u0000\u0000\u0000\u0018\u0144\u0001"+
"\u0000\u0000\u0000\u001a\u0147\u0001\u0000\u0000\u0000\u001c\u0153\u0001"+
"\u0000\u0000\u0000\u001e\u0168\u0001\u0000\u0000\u0000 \u016c\u0001\u0000"+
"\u0000\u0000\"\u016e\u0001\u0000\u0000\u0000$\u0170\u0001\u0000\u0000"+
"\u0000&\u0172\u0001\u0000\u0000\u0000(\u0179\u0001\u0000\u0000\u0000*"+
"\u0180\u0001\u0000\u0000\u0000,\u0185\u0001\u0000\u0000\u0000.\u0187\u0001"+
"\u0000\u0000\u00000\u018c\u0001\u0000\u0000\u00002\u0191\u0001\u0000\u0000"+
"\u00004\u019d\u0001\u0000\u0000\u00006\u01a0\u0001\u0000\u0000\u00008"+
"\u01af\u0001\u0000\u0000\u0000:\u01b1\u0001\u0000\u0000\u0000<\u01b9\u0001"+
"\u0000\u0000\u0000>\u01c1\u0001\u0000\u0000\u0000@\u01c3\u0001\u0000\u0000"+
"\u0000B\u01e1\u0001\u0000\u0000\u0000D\u01e4\u0001\u0000\u0000\u0000F"+
"\u01ec\u0001\u0000\u0000\u0000H\u01ee\u0001\u0000\u0000\u0000J\u01f1\u0001"+
"\u0000\u0000\u0000L\u01f5\u0001\u0000\u0000\u0000N\u01f7\u0001\u0000\u0000"+
"\u0000P\u01fc\u0001\u0000\u0000\u0000R\u0201\u0001\u0000\u0000\u0000T"+
"\u0213\u0001\u0000\u0000\u0000V\u0215\u0001\u0000\u0000\u0000X\u0217\u0001"+
"\u0000\u0000\u0000Z\u021b\u0001\u0000\u0000\u0000\\\u021d\u0001\u0000"+
"\u0000\u0000^\u021f\u0001\u0000\u0000\u0000`\u0234\u0001\u0000\u0000\u0000"+
"b\u023e\u0001\u0000\u0000\u0000d\u0247\u0001\u0000\u0000\u0000f\u024b"+
"\u0001\u0000\u0000\u0000h\u024e\u0001\u0000\u0000\u0000j\u0254\u0001\u0000"+
"\u0000\u0000l\u025f\u0001\u0000\u0000\u0000n\u0268\u0001\u0000\u0000\u0000"+
"p\u0275\u0001\u0000\u0000\u0000r\u0277\u0001\u0000\u0000\u0000t\u0280"+
"\u0001\u0000\u0000\u0000v\u028a\u0001\u0000\u0000\u0000x\u028f\u0001\u0000"+
"\u0000\u0000z\u0291\u0001\u0000\u0000\u0000|\u02a3\u0001\u0000\u0000\u0000"+
"~\u02c4\u0001\u0000\u0000\u0000\u0080\u02f9\u0001\u0000\u0000\u0000\u0082"+
"\u0300\u0001\u0000\u0000\u0000\u0084\u0302\u0001\u0000\u0000\u0000\u0086"+
"\u0352\u0001\u0000\u0000\u0000\u0088\u036a\u0001\u0000\u0000\u0000\u008a"+
"\u036f\u0001\u0000\u0000\u0000\u008c\u0372\u0001\u0000\u0000\u0000\u008e"+
"\u0374\u0001\u0000\u0000\u0000\u0090\u0376\u0001\u0000\u0000\u0000\u0092"+
"\u037f\u0001\u0000\u0000\u0000\u0094\u0389\u0001\u0000\u0000\u0000\u0096"+
"\u03dc\u0001\u0000\u0000\u0000\u0098\u03eb\u0001\u0000\u0000\u0000\u009a"+
"\u03ef\u0001\u0000\u0000\u0000\u009c\u03f1\u0001\u0000\u0000\u0000\u009e"+
"\u03fd\u0001\u0000\u0000\u0000\u00a0\u03ff\u0001\u0000\u0000\u0000\u00a2"+
"\u0406\u0001\u0000\u0000\u0000\u00a4\u0414\u0001\u0000\u0000\u0000\u00a6"+
"\u0416\u0001\u0000\u0000\u0000\u00a8\u041e\u0001\u0000\u0000\u0000\u00aa"+
"\u042e\u0001\u0000\u0000\u0000\u00ac\u0432\u0001\u0000\u0000\u0000\u00ae"+
"\u0441\u0001\u0000\u0000\u0000\u00b0\u044c\u0001\u0000\u0000\u0000\u00b2"+
"\u045b\u0001\u0000\u0000\u0000\u00b4\u045e\u0001\u0000\u0000\u0000\u00b6"+
"\u0465\u0001\u0000\u0000\u0000\u00b8\u0473\u0001\u0000\u0000\u0000\u00ba"+
"\u0475\u0001\u0000\u0000\u0000\u00bc\u0477\u0001\u0000\u0000\u0000\u00be"+
"\u0479\u0001\u0000\u0000\u0000\u00c0\u047b\u0001\u0000\u0000\u0000\u00c2"+
"\u047d\u0001\u0000\u0000\u0000\u00c4\u0481\u0001\u0000\u0000\u0000\u00c6"+
"\u0485\u0001\u0000\u0000\u0000\u00c8\u0489\u0001\u0000\u0000\u0000\u00ca"+
"\u048b\u0001\u0000\u0000\u0000\u00cc\u048d\u0001\u0000\u0000\u0000\u00ce"+
"\u0492\u0001\u0000\u0000\u0000\u00d0\u049a\u0001\u0000\u0000\u0000\u00d2"+
"\u04a1\u0001\u0000\u0000\u0000\u00d4\u00dc\u0003\u0006\u0003\u0000\u00d5"+
"\u00dc\u0003\b\u0004\u0000\u00d6\u00dc\u0003\u0010\b\u0000\u00d7\u00dc"+
"\u0003\u0012\t\u0000\u00d8\u00dc\u0003\u001a\r\u0000\u00d9\u00dc\u0003"+
"\u001c\u000e\u0000\u00da\u00dc\u0003\u000e\u0007\u0000\u00db\u00d4\u0001"+
"\u0000\u0000\u0000\u00db\u00d5\u0001\u0000\u0000\u0000\u00db\u00d6\u0001"+
"\u0000\u0000\u0000\u00db\u00d7\u0001\u0000\u0000\u0000\u00db\u00d8\u0001"+
"\u0000\u0000\u0000\u00db\u00d9\u0001\u0000\u0000\u0000\u00db\u00da\u0001"+
"\u0000\u0000\u0000\u00dc\u0001\u0001\u0000\u0000\u0000\u00dd\u00df\u0003"+
"\u0004\u0002\u0000\u00de\u00dd\u0001\u0000\u0000\u0000\u00de\u00df\u0001"+
"\u0000\u0000\u0000\u00df\u00e3\u0001\u0000\u0000\u0000\u00e0\u00e2\u0003"+
"\u0000\u0000\u0000\u00e1\u00e0\u0001\u0000\u0000\u0000\u00e2\u00e5\u0001"+
"\u0000\u0000\u0000\u00e3\u00e1\u0001\u0000\u0000\u0000\u00e3\u00e4\u0001"+
"\u0000\u0000\u0000\u00e4\u00e9\u0001\u0000\u0000\u0000\u00e5\u00e3\u0001"+
"\u0000\u0000\u0000\u00e6\u00e8\u00038\u001c\u0000\u00e7\u00e6\u0001\u0000"+
"\u0000\u0000\u00e8\u00eb\u0001\u0000\u0000\u0000\u00e9\u00e7\u0001\u0000"+
"\u0000\u0000\u00e9\u00ea\u0001\u0000\u0000\u0000\u00ea\u00ec\u0001\u0000"+
"\u0000\u0000\u00eb\u00e9\u0001\u0000\u0000\u0000\u00ec\u00ed\u0005\u0000"+
"\u0000\u0001\u00ed\u0003\u0001\u0000\u0000\u0000\u00ee\u00ef\u0005\u0001"+
"\u0000\u0000\u00ef\u00f2\u0003t:\u0000\u00f0\u00f1\u0005\u0002\u0000\u0000"+
"\u00f1\u00f3\u0003$\u0012\u0000\u00f2\u00f0\u0001\u0000\u0000\u0000\u00f2"+
"\u00f3\u0001\u0000\u0000\u0000\u00f3\u0005\u0001\u0000\u0000\u0000\u00f4"+
"\u00f5\u0005\u0003\u0000\u0000\u00f5\u00f8\u0003t:\u0000\u00f6\u00f7\u0005"+
"\u0002\u0000\u0000\u00f7\u00f9\u0003$\u0012\u0000\u00f8\u00f6\u0001\u0000"+
"\u0000\u0000\u00f8\u00f9\u0001\u0000\u0000\u0000\u00f9\u00fc\u0001\u0000"+
"\u0000\u0000\u00fa\u00fb\u0005\u0004\u0000\u0000\u00fb\u00fd\u0003\n\u0005"+
"\u0000\u00fc\u00fa\u0001\u0000\u0000\u0000\u00fc\u00fd\u0001\u0000\u0000"+
"\u0000\u00fd\u0007\u0001\u0000\u0000\u0000\u00fe\u00ff\u0005\u0005\u0000"+
"\u0000\u00ff\u0102\u0003t:\u0000\u0100\u0101\u0005\u0002\u0000\u0000\u0101"+
"\u0103\u0003$\u0012\u0000\u0102\u0100\u0001\u0000\u0000\u0000\u0102\u0103"+
"\u0001\u0000\u0000\u0000\u0103\u0106\u0001\u0000\u0000\u0000\u0104\u0105"+
"\u0005\u0004\u0000\u0000\u0105\u0107\u0003\n\u0005\u0000\u0106\u0104\u0001"+
"\u0000\u0000\u0000\u0106\u0107\u0001\u0000\u0000\u0000\u0107\t\u0001\u0000"+
"\u0000\u0000\u0108\u0109\u0003\u00cae\u0000\u0109\u000b\u0001\u0000\u0000"+
"\u0000\u010a\u010b\u0007\u0000\u0000\u0000\u010b\r\u0001\u0000\u0000\u0000"+
"\u010c\u010e\u0003\f\u0006\u0000\u010d\u010c\u0001\u0000\u0000\u0000\u010d"+
"\u010e\u0001\u0000\u0000\u0000\u010e\u010f\u0001\u0000\u0000\u0000\u010f"+
"\u0110\u0005\b\u0000\u0000\u0110\u0112\u0003\u00cae\u0000\u0111\u0113"+
"\u0003(\u0014\u0000\u0112\u0111\u0001\u0000\u0000\u0000\u0112\u0113\u0001"+
"\u0000\u0000\u0000\u0113\u0116\u0001\u0000\u0000\u0000\u0114\u0115\u0005"+
"\t\u0000\u0000\u0115\u0117\u0003~?\u0000\u0116\u0114\u0001\u0000\u0000"+
"\u0000\u0116\u0117\u0001\u0000\u0000\u0000\u0117\u000f\u0001\u0000\u0000"+
"\u0000\u0118\u011a\u0003\f\u0006\u0000\u0119\u0118\u0001\u0000\u0000\u0000"+
"\u0119\u011a\u0001\u0000\u0000\u0000\u011a\u011b\u0001\u0000\u0000\u0000"+
"\u011b\u011c\u0005\n\u0000\u0000\u011c\u011d\u0003\u00cae\u0000\u011d"+
"\u011e\u0005\u000b\u0000\u0000\u011e\u0121\u0003 \u0010\u0000\u011f\u0120"+
"\u0005\u0002\u0000\u0000\u0120\u0122\u0003$\u0012\u0000\u0121\u011f\u0001"+
"\u0000\u0000\u0000\u0121\u0122\u0001\u0000\u0000\u0000\u0122\u0011\u0001"+
"\u0000\u0000\u0000\u0123\u0125\u0003\f\u0006\u0000\u0124\u0123\u0001\u0000"+
"\u0000\u0000\u0124\u0125\u0001\u0000\u0000\u0000\u0125\u0126\u0001\u0000"+
"\u0000\u0000\u0126\u0127\u0005\f\u0000\u0000\u0127\u0128\u0003\u00cae"+
"\u0000\u0128\u0129\u0005\u000b\u0000\u0000\u0129\u012c\u0003\"\u0011\u0000"+
"\u012a\u012b\u0005\u0002\u0000\u0000\u012b\u012d\u0003$\u0012\u0000\u012c"+
"\u012a\u0001\u0000\u0000\u0000\u012c\u012d\u0001\u0000\u0000\u0000\u012d"+
"\u012f\u0001\u0000\u0000\u0000\u012e\u0130\u0003\u0014\n\u0000\u012f\u012e"+
"\u0001\u0000\u0000\u0000\u012f\u0130\u0001\u0000\u0000\u0000\u0130\u0013"+
"\u0001\u0000\u0000\u0000\u0131\u0132\u0005\r\u0000\u0000\u0132\u0133\u0005"+
"\u000e\u0000\u0000\u0133\u0138\u0003\u0016\u000b\u0000\u0134\u0135\u0005"+
"\u000f\u0000\u0000\u0135\u0137\u0003\u0016\u000b\u0000\u0136\u0134\u0001"+
"\u0000\u0000\u0000\u0137\u013a\u0001\u0000\u0000\u0000\u0138\u0136\u0001"+
"\u0000\u0000\u0000\u0138\u0139\u0001\u0000\u0000\u0000\u0139\u013b\u0001"+
"\u0000\u0000\u0000\u013a\u0138\u0001\u0000\u0000\u0000\u013b\u013c\u0005"+
"\u0010\u0000\u0000\u013c\u0015\u0001\u0000\u0000\u0000\u013d\u013e\u0003"+
"\u0018\f\u0000\u013e\u013f\u0005\u0011\u0000\u0000\u013f\u0141\u0001\u0000"+
"\u0000\u0000\u0140\u013d\u0001\u0000\u0000\u0000\u0140\u0141\u0001\u0000"+
"\u0000\u0000\u0141\u0142\u0001\u0000\u0000\u0000\u0142\u0143\u0003\u00ca"+
"e\u0000\u0143\u0017\u0001\u0000\u0000\u0000\u0144\u0145\u0003\u00cae\u0000"+
"\u0145\u0019\u0001\u0000\u0000\u0000\u0146\u0148\u0003\f\u0006\u0000\u0147"+
"\u0146\u0001\u0000\u0000\u0000\u0147\u0148\u0001\u0000\u0000\u0000\u0148"+
"\u0149\u0001\u0000\u0000\u0000\u0149\u014a\u0005\u0012\u0000\u0000\u014a"+
"\u014b\u0003\u00cae\u0000\u014b\u014c\u0005\u000b\u0000\u0000\u014c\u014d"+
"\u0003&\u0013\u0000\u014d\u014e\u0005\u0013\u0000\u0000\u014e\u0150\u0003"+
"\u0016\u000b\u0000\u014f\u0151\u0003\u00b2Y\u0000\u0150\u014f\u0001\u0000"+
"\u0000\u0000\u0150\u0151\u0001\u0000\u0000\u0000\u0151\u001b\u0001\u0000"+
"\u0000\u0000\u0152\u0154\u0003\f\u0006\u0000\u0153\u0152\u0001\u0000\u0000"+
"\u0000\u0153\u0154\u0001\u0000\u0000\u0000\u0154\u0155\u0001\u0000\u0000"+
"\u0000\u0155\u0156\u0005\u0014\u0000\u0000\u0156\u0157\u0003\u00cae\u0000"+
"\u0157\u0158\u0005\u000b\u0000\u0000\u0158\u0159\u0005\u000e\u0000\u0000"+
"\u0159\u015e\u0003\u001e\u000f\u0000\u015a\u015b\u0005\u000f\u0000\u0000"+
"\u015b\u015d\u0003\u001e\u000f\u0000\u015c\u015a\u0001\u0000\u0000\u0000"+
"\u015d\u0160\u0001\u0000\u0000\u0000\u015e\u015c\u0001\u0000\u0000\u0000"+
"\u015e\u015f\u0001\u0000\u0000\u0000\u015f\u0161\u0001\u0000\u0000\u0000"+
"\u0160\u015e\u0001\u0000\u0000\u0000\u0161\u0163\u0005\u0010\u0000\u0000"+
"\u0162\u0164\u0003\u00b2Y\u0000\u0163\u0162\u0001\u0000\u0000\u0000\u0163"+
"\u0164\u0001\u0000\u0000\u0000\u0164\u001d\u0001\u0000\u0000\u0000\u0165"+
"\u0166\u0003\u0018\f\u0000\u0166\u0167\u0005\u0011\u0000\u0000\u0167\u0169"+
"\u0001\u0000\u0000\u0000\u0168\u0165\u0001\u0000\u0000\u0000\u0168\u0169"+
"\u0001\u0000\u0000\u0000\u0169\u016a\u0001\u0000\u0000\u0000\u016a\u016b"+
"\u0003\u00cae\u0000\u016b\u001f\u0001\u0000\u0000\u0000\u016c\u016d\u0005"+
"\u00a5\u0000\u0000\u016d!\u0001\u0000\u0000\u0000\u016e\u016f\u0005\u00a5"+
"\u0000\u0000\u016f#\u0001\u0000\u0000\u0000\u0170\u0171\u0005\u00a5\u0000"+
"\u0000\u0171%\u0001\u0000\u0000\u0000\u0172\u0173\u0005\u00a5\u0000\u0000"+
"\u0173\'\u0001\u0000\u0000\u0000\u0174\u017a\u0003*\u0015\u0000\u0175"+
"\u017a\u0003.\u0017\u0000\u0176\u017a\u00030\u0018\u0000\u0177\u017a\u0003"+
"2\u0019\u0000\u0178\u017a\u00036\u001b\u0000\u0179\u0174\u0001\u0000\u0000"+
"\u0000\u0179\u0175\u0001\u0000\u0000\u0000\u0179\u0176\u0001\u0000\u0000"+
"\u0000\u0179\u0177\u0001\u0000\u0000\u0000\u0179\u0178\u0001\u0000\u0000"+
"\u0000\u017a)\u0001\u0000\u0000\u0000\u017b\u017c\u0003\\.\u0000\u017c"+
"\u017d\u0005\u0011\u0000\u0000\u017d\u017f\u0001\u0000\u0000\u0000\u017e"+
"\u017b\u0001\u0000\u0000\u0000\u017f\u0182\u0001\u0000\u0000\u0000\u0180"+
"\u017e\u0001\u0000\u0000\u0000\u0180\u0181\u0001\u0000\u0000\u0000\u0181"+
"\u0183\u0001\u0000\u0000\u0000\u0182\u0180\u0001\u0000\u0000\u0000\u0183"+
"\u0184\u0003\u00c6c\u0000\u0184+\u0001\u0000\u0000\u0000\u0185\u0186\u0003"+
"\u00cae\u0000\u0186-\u0001\u0000\u0000\u0000\u0187\u0188\u0005\u0015\u0000"+
"\u0000\u0188\u0189\u0005\u0016\u0000\u0000\u0189\u018a\u0003(\u0014\u0000"+
"\u018a\u018b\u0005\u0017\u0000\u0000\u018b/\u0001\u0000\u0000\u0000\u018c"+
"\u018d\u0005\u0018\u0000\u0000\u018d\u018e\u0005\u0016\u0000\u0000\u018e"+
"\u018f\u0003(\u0014\u0000\u018f\u0190\u0005\u0017\u0000\u0000\u01901\u0001"+
"\u0000\u0000\u0000\u0191\u0192\u0005\u0019\u0000\u0000\u0192\u0193\u0005"+
"\u000e\u0000\u0000\u0193\u0198\u00034\u001a\u0000\u0194\u0195\u0005\u000f"+
"\u0000\u0000\u0195\u0197\u00034\u001a\u0000\u0196\u0194\u0001\u0000\u0000"+
"\u0000\u0197\u019a\u0001\u0000\u0000\u0000\u0198\u0196\u0001\u0000\u0000"+
"\u0000\u0198\u0199\u0001\u0000\u0000\u0000\u0199\u019b\u0001\u0000\u0000"+
"\u0000\u019a\u0198\u0001\u0000\u0000\u0000\u019b\u019c\u0005\u0010\u0000"+
"\u0000\u019c3\u0001\u0000\u0000\u0000\u019d\u019e\u0003\u00c4b\u0000\u019e"+
"\u019f\u0003(\u0014\u0000\u019f5\u0001\u0000\u0000\u0000\u01a0\u01a1\u0005"+
"\u001a\u0000\u0000\u01a1\u01a2\u0005\u0016\u0000\u0000\u01a2\u01a7\u0003"+
"(\u0014\u0000\u01a3\u01a4\u0005\u000f\u0000\u0000\u01a4\u01a6\u0003(\u0014"+
"\u0000\u01a5\u01a3\u0001\u0000\u0000\u0000\u01a6\u01a9\u0001\u0000\u0000"+
"\u0000\u01a7\u01a5\u0001\u0000\u0000\u0000\u01a7\u01a8\u0001\u0000\u0000"+
"\u0000\u01a8\u01aa\u0001\u0000\u0000\u0000\u01a9\u01a7\u0001\u0000\u0000"+
"\u0000\u01aa\u01ab\u0005\u0017\u0000\u0000\u01ab7\u0001\u0000\u0000\u0000"+
"\u01ac\u01b0\u0003:\u001d\u0000\u01ad\u01b0\u0003<\u001e\u0000\u01ae\u01b0"+
"\u0003@ \u0000\u01af\u01ac\u0001\u0000\u0000\u0000\u01af\u01ad\u0001\u0000"+
"\u0000\u0000\u01af\u01ae\u0001\u0000\u0000\u0000\u01b09\u0001\u0000\u0000"+
"\u0000\u01b1\u01b3\u0005\u001b\u0000\u0000\u01b2\u01b4\u0003\f\u0006\u0000"+
"\u01b3\u01b2\u0001\u0000\u0000\u0000\u01b3\u01b4\u0001\u0000\u0000\u0000"+
"\u01b4\u01b5\u0001\u0000\u0000\u0000\u01b5\u01b6\u0003\u00cae\u0000\u01b6"+
"\u01b7\u0005\u000b\u0000\u0000\u01b7\u01b8\u0003~?\u0000\u01b8;\u0001"+
"\u0000\u0000\u0000\u01b9\u01bd\u0005\u001c\u0000\u0000\u01ba\u01bb\u0003"+
",\u0016\u0000\u01bb\u01bc\u0005\u0011\u0000\u0000\u01bc\u01be\u0001\u0000"+
"\u0000\u0000\u01bd\u01ba\u0001\u0000\u0000\u0000\u01bd\u01be\u0001\u0000"+
"\u0000\u0000\u01be\u01bf\u0001\u0000\u0000\u0000\u01bf\u01c0\u0003\u00ca"+
"e\u0000\u01c0=\u0001\u0000\u0000\u0000\u01c1\u01c2\u0005\u001d\u0000\u0000"+
"\u01c2?\u0001\u0000\u0000\u0000\u01c3\u01c5\u0005\u001b\u0000\u0000\u01c4"+
"\u01c6\u0003\f\u0006\u0000\u01c5\u01c4\u0001\u0000\u0000\u0000\u01c5\u01c6"+
"\u0001\u0000\u0000\u0000\u01c6\u01c8\u0001\u0000\u0000\u0000\u01c7\u01c9"+
"\u0003>\u001f\u0000\u01c8\u01c7\u0001\u0000\u0000\u0000\u01c8\u01c9\u0001"+
"\u0000\u0000\u0000\u01c9\u01ca\u0001\u0000\u0000\u0000\u01ca\u01cb\u0005"+
"\u001e\u0000\u0000\u01cb\u01cc\u0003\u00c8d\u0000\u01cc\u01d5\u0005\u001f"+
"\u0000\u0000\u01cd\u01d2\u0003B!\u0000\u01ce\u01cf\u0005\u000f\u0000\u0000"+
"\u01cf\u01d1\u0003B!\u0000\u01d0\u01ce\u0001\u0000\u0000\u0000\u01d1\u01d4"+
"\u0001\u0000\u0000\u0000\u01d2\u01d0\u0001\u0000\u0000\u0000\u01d2\u01d3"+
"\u0001\u0000\u0000\u0000\u01d3\u01d6\u0001\u0000\u0000\u0000\u01d4\u01d2"+
"\u0001\u0000\u0000\u0000\u01d5\u01cd\u0001\u0000\u0000\u0000\u01d5\u01d6"+
"\u0001\u0000\u0000\u0000\u01d6\u01d7\u0001\u0000\u0000\u0000\u01d7\u01da"+
"\u0005 \u0000\u0000\u01d8\u01d9\u0005!\u0000\u0000\u01d9\u01db\u0003("+
"\u0014\u0000\u01da\u01d8\u0001\u0000\u0000\u0000\u01da\u01db\u0001\u0000"+
"\u0000\u0000\u01db\u01dc\u0001\u0000\u0000\u0000\u01dc\u01df\u0005\u000b"+
"\u0000\u0000\u01dd\u01e0\u0003D\"\u0000\u01de\u01e0\u0005\"\u0000\u0000"+
"\u01df\u01dd\u0001\u0000\u0000\u0000\u01df\u01de\u0001\u0000\u0000\u0000"+
"\u01e0A\u0001\u0000\u0000\u0000\u01e1\u01e2\u0003\u00c4b\u0000\u01e2\u01e3"+
"\u0003(\u0014\u0000\u01e3C\u0001\u0000\u0000\u0000\u01e4\u01e5\u0003~"+
"?\u0000\u01e5E\u0001\u0000\u0000\u0000\u01e6\u01ed\u0003R)\u0000\u01e7"+
"\u01ed\u0003v;\u0000\u01e8\u01e9\u0005\u001f\u0000\u0000\u01e9\u01ea\u0003"+
"~?\u0000\u01ea\u01eb\u0005 \u0000\u0000\u01eb\u01ed\u0001\u0000\u0000"+
"\u0000\u01ec\u01e6\u0001\u0000\u0000\u0000\u01ec\u01e7\u0001\u0000\u0000"+
"\u0000\u01ec\u01e8\u0001\u0000\u0000\u0000\u01edG\u0001\u0000\u0000\u0000"+
"\u01ee\u01ef\u0003F#\u0000\u01ef\u01f0\u0003J%\u0000\u01f0I\u0001\u0000"+
"\u0000\u0000\u01f1\u01f2\u0003\u00cae\u0000\u01f2K\u0001\u0000\u0000\u0000"+
"\u01f3\u01f6\u0003N\'\u0000\u01f4\u01f6\u0003P(\u0000\u01f5\u01f3\u0001"+
"\u0000\u0000\u0000\u01f5\u01f4\u0001\u0000\u0000\u0000\u01f6M\u0001\u0000"+
"\u0000\u0000\u01f7\u01f8\u0005#\u0000\u0000\u01f8\u01f9\u0003H$\u0000"+
"\u01f9\u01fa\u0005$\u0000\u0000\u01fa\u01fb\u0003~?\u0000\u01fbO\u0001"+
"\u0000\u0000\u0000\u01fc\u01fd\u0005%\u0000\u0000\u01fd\u01fe\u0003H$"+
"\u0000\u01fe\u01ff\u0005$\u0000\u0000\u01ff\u0200\u0003~?\u0000\u0200"+
"Q\u0001\u0000\u0000\u0000\u0201\u0205\u0005&\u0000\u0000\u0202\u0203\u0003"+
"T*\u0000\u0203\u0204\u0005\'\u0000\u0000\u0204\u0206\u0001\u0000\u0000"+
"\u0000\u0205\u0202\u0001\u0000\u0000\u0000\u0205\u0206\u0001\u0000\u0000"+
"\u0000\u0206\u0207\u0001\u0000\u0000\u0000\u0207\u020f\u0003*\u0015\u0000"+
"\u0208\u020c\u0005\u000b\u0000\u0000\u0209\u020a\u0003V+\u0000\u020a\u020b"+
"\u0003X,\u0000\u020b\u020d\u0001\u0000\u0000\u0000\u020c\u0209\u0001\u0000"+
"\u0000\u0000\u020c\u020d\u0001\u0000\u0000\u0000\u020d\u020e\u0001\u0000"+
"\u0000\u0000\u020e\u0210\u0003Z-\u0000\u020f\u0208\u0001\u0000\u0000\u0000"+
"\u020f\u0210\u0001\u0000\u0000\u0000\u0210\u0211\u0001\u0000\u0000\u0000"+
"\u0211\u0212\u0005(\u0000\u0000\u0212S\u0001\u0000\u0000\u0000\u0213\u0214"+
"\u0003v;\u0000\u0214U\u0001\u0000\u0000\u0000\u0215\u0216\u0003z=\u0000"+
"\u0216W\u0001\u0000\u0000\u0000\u0217\u0218\u0007\u0001\u0000\u0000\u0218"+
"Y\u0001\u0000\u0000\u0000\u0219\u021c\u0003v;\u0000\u021a\u021c\u0003"+
"~?\u0000\u021b\u0219\u0001\u0000\u0000\u0000\u021b\u021a\u0001\u0000\u0000"+
"\u0000\u021c[\u0001\u0000\u0000\u0000\u021d\u021e\u0003\u00cae\u0000\u021e"+
"]\u0001\u0000\u0000\u0000\u021f\u0221\u0003`0\u0000\u0220\u0222\u0003"+
"b1\u0000\u0221\u0220\u0001\u0000\u0000\u0000\u0221\u0222\u0001\u0000\u0000"+
"\u0000\u0222\u0226\u0001\u0000\u0000\u0000\u0223\u0225\u0003L&\u0000\u0224"+
"\u0223\u0001\u0000\u0000\u0000\u0225\u0228\u0001\u0000\u0000\u0000\u0226"+
"\u0224\u0001\u0000\u0000\u0000\u0226\u0227\u0001\u0000\u0000\u0000\u0227"+
"\u022a\u0001\u0000\u0000\u0000\u0228\u0226\u0001\u0000\u0000\u0000\u0229"+
"\u022b\u0003f3\u0000\u022a\u0229\u0001\u0000\u0000\u0000\u022a\u022b\u0001"+
"\u0000\u0000\u0000\u022b\u022e\u0001\u0000\u0000\u0000\u022c\u022f\u0003"+
"j5\u0000\u022d\u022f\u0003h4\u0000\u022e\u022c\u0001\u0000\u0000\u0000"+
"\u022e\u022d\u0001\u0000\u0000\u0000\u022e\u022f\u0001\u0000\u0000\u0000"+
"\u022f\u0231\u0001\u0000\u0000\u0000\u0230\u0232\u0003n7\u0000\u0231\u0230"+
"\u0001\u0000\u0000\u0000\u0231\u0232\u0001\u0000\u0000\u0000\u0232_\u0001"+
"\u0000\u0000\u0000\u0233\u0235\u0005\u0013\u0000\u0000\u0234\u0233\u0001"+
"\u0000\u0000\u0000\u0234\u0235\u0001\u0000\u0000\u0000\u0235\u0236\u0001"+
"\u0000\u0000\u0000\u0236\u023b\u0003H$\u0000\u0237\u0238\u0005\u000f\u0000"+
"\u0000\u0238\u023a\u0003H$\u0000\u0239\u0237\u0001\u0000\u0000\u0000\u023a"+
"\u023d\u0001\u0000\u0000\u0000\u023b\u0239\u0001\u0000\u0000\u0000\u023b"+
"\u023c\u0001\u0000\u0000\u0000\u023ca\u0001\u0000\u0000\u0000\u023d\u023b"+
"\u0001\u0000\u0000\u0000\u023e\u023f\u0005,\u0000\u0000\u023f\u0244\u0003"+
"d2\u0000\u0240\u0241\u0005\u000f\u0000\u0000\u0241\u0243\u0003d2\u0000"+
"\u0242\u0240\u0001\u0000\u0000\u0000\u0243\u0246\u0001\u0000\u0000\u0000"+
"\u0244\u0242\u0001\u0000\u0000\u0000\u0244\u0245\u0001\u0000\u0000\u0000"+
"\u0245c\u0001\u0000\u0000\u0000\u0246\u0244\u0001\u0000\u0000\u0000\u0247"+
"\u0248\u0003\u00cae\u0000\u0248\u0249\u0005\u000b\u0000\u0000\u0249\u024a"+
"\u0003~?\u0000\u024ae\u0001\u0000\u0000\u0000\u024b\u024c\u0005-\u0000"+
"\u0000\u024c\u024d\u0003~?\u0000\u024dg\u0001\u0000\u0000\u0000\u024e"+
"\u0250\u0005.\u0000\u0000\u024f\u0251\u0007\u0002\u0000\u0000\u0250\u024f"+
"\u0001\u0000\u0000\u0000\u0250\u0251\u0001\u0000\u0000\u0000\u0251\u0252"+
"\u0001\u0000\u0000\u0000\u0252\u0253\u0003~?\u0000\u0253i\u0001\u0000"+
"\u0000\u0000\u0254\u0256\u00051\u0000\u0000\u0255\u0257\u0007\u0002\u0000"+
"\u0000\u0256\u0255\u0001\u0000\u0000\u0000\u0256\u0257\u0001\u0000\u0000"+
"\u0000\u0257\u0258\u0001\u0000\u0000\u0000\u0258\u025a\u0003\u00cae\u0000"+
"\u0259\u025b\u0003l6\u0000\u025a\u0259\u0001\u0000\u0000\u0000\u025a\u025b"+
"\u0001\u0000\u0000\u0000\u025b\u025c\u0001\u0000\u0000\u0000\u025c\u025d"+
"\u0005\u000b\u0000\u0000\u025d\u025e\u0003~?\u0000\u025ek\u0001\u0000"+
"\u0000\u0000\u025f\u0266\u00052\u0000\u0000\u0260\u0267\u0003|>\u0000"+
"\u0261\u0267\u0003\u00d0h\u0000\u0262\u0263\u0005\u001f\u0000\u0000\u0263"+
"\u0264\u0003~?\u0000\u0264\u0265\u0005 \u0000\u0000\u0265\u0267\u0001"+
"\u0000\u0000\u0000\u0266\u0260\u0001\u0000\u0000\u0000\u0266\u0261\u0001"+
"\u0000\u0000\u0000\u0266\u0262\u0001\u0000\u0000\u0000\u0267m\u0001\u0000"+
"\u0000\u0000\u0268\u0273\u00053\u0000\u0000\u0269\u0274\u0003p8\u0000"+
"\u026a\u026b\u00054\u0000\u0000\u026b\u0270\u0003r9\u0000\u026c\u026d"+
"\u0005\u000f\u0000\u0000\u026d\u026f\u0003r9\u0000\u026e\u026c\u0001\u0000"+
"\u0000\u0000\u026f\u0272\u0001\u0000\u0000\u0000\u0270\u026e\u0001\u0000"+
"\u0000\u0000\u0270\u0271\u0001\u0000\u0000\u0000\u0271\u0274\u0001\u0000"+
"\u0000\u0000\u0272\u0270\u0001\u0000\u0000\u0000\u0273\u0269\u0001\u0000"+
"\u0000\u0000\u0273\u026a\u0001\u0000\u0000\u0000\u0274o\u0001\u0000\u0000"+
"\u0000\u0275\u0276\u0007\u0003\u0000\u0000\u0276q\u0001\u0000\u0000\u0000"+
"\u0277\u0279\u0003\u0086C\u0000\u0278\u027a\u0003p8\u0000\u0279\u0278"+
"\u0001\u0000\u0000\u0000\u0279\u027a\u0001\u0000\u0000\u0000\u027as\u0001"+
"\u0000\u0000\u0000\u027b\u027c\u0003\\.\u0000\u027c\u027d\u0005\u0011"+
"\u0000\u0000\u027d\u027f\u0001\u0000\u0000\u0000\u027e\u027b\u0001\u0000"+
"\u0000\u0000\u027f\u0282\u0001\u0000\u0000\u0000\u0280\u027e\u0001\u0000"+
"\u0000\u0000\u0280\u0281\u0001\u0000\u0000\u0000\u0281\u0283\u0001\u0000"+
"\u0000\u0000\u0282\u0280\u0001\u0000\u0000\u0000\u0283\u0284\u0003\u00ca"+
"e\u0000\u0284u\u0001\u0000\u0000\u0000\u0285\u0286\u0003x<\u0000\u0286"+
"\u0287\u0005\u0011\u0000\u0000\u0287\u0289\u0001\u0000\u0000\u0000\u0288"+
"\u0285\u0001\u0000\u0000\u0000\u0289\u028c\u0001\u0000\u0000\u0000\u028a"+
"\u0288\u0001\u0000\u0000\u0000\u028a\u028b\u0001\u0000\u0000\u0000\u028b"+
"\u028d\u0001\u0000\u0000\u0000\u028c\u028a\u0001\u0000\u0000\u0000\u028d"+
"\u028e\u0003\u00c4b\u0000\u028ew\u0001\u0000\u0000\u0000\u028f\u0290\u0003"+
"\u00c4b\u0000\u0290y\u0001\u0000\u0000\u0000\u0291\u0292\u0006=\uffff"+
"\uffff\u0000\u0292\u0293\u0003\u00c4b\u0000\u0293\u029e\u0001\u0000\u0000"+
"\u0000\u0294\u0295\n\u0002\u0000\u0000\u0295\u0296\u0005\u0011\u0000\u0000"+
"\u0296\u029d\u0003\u00c4b\u0000\u0297\u0298\n\u0001\u0000\u0000\u0298"+
"\u0299\u0005&\u0000\u0000\u0299\u029a\u0003|>\u0000\u029a\u029b\u0005"+
"(\u0000\u0000\u029b\u029d\u0001\u0000\u0000\u0000\u029c\u0294\u0001\u0000"+
"\u0000\u0000\u029c\u0297\u0001\u0000\u0000\u0000\u029d\u02a0\u0001\u0000"+
"\u0000\u0000\u029e\u029c\u0001\u0000\u0000\u0000\u029e\u029f\u0001\u0000"+
"\u0000\u0000\u029f{\u0001\u0000\u0000\u0000\u02a0\u029e\u0001\u0000\u0000"+
"\u0000\u02a1\u02a4\u0005\u00a5\u0000\u0000\u02a2\u02a4\u0005\u00a6\u0000"+
"\u0000\u02a3\u02a1\u0001\u0000\u0000\u0000\u02a3\u02a2\u0001\u0000\u0000"+
"\u0000\u02a4}\u0001\u0000\u0000\u0000\u02a5\u02a6\u0006?\uffff\uffff\u0000"+
"\u02a6\u02c5\u0003\u0086C\u0000\u02a7\u02c5\u0003R)\u0000\u02a8\u02c5"+
"\u0003^/\u0000\u02a9\u02aa\u0005?\u0000\u0000\u02aa\u02ab\u0003~?\u0000"+
"\u02ab\u02ac\u0005>\u0000\u0000\u02ac\u02ad\u0003(\u0014\u0000\u02ad\u02c5"+
"\u0001\u0000\u0000\u0000\u02ae\u02af\u0005:\u0000\u0000\u02af\u02c5\u0003"+
"~?\r\u02b0\u02b1\u0005@\u0000\u0000\u02b1\u02c5\u0003~?\f\u02b2\u02b3"+
"\u0005D\u0000\u0000\u02b3\u02b5\u0005)\u0000\u0000\u02b4\u02b2\u0001\u0000"+
"\u0000\u0000\u02b4\u02b5\u0001\u0000\u0000\u0000\u02b5\u02b6\u0001\u0000"+
"\u0000\u0000\u02b6\u02b7\u0003\u0084B\u0000\u02b7\u02b8\u0005B\u0000\u0000"+
"\u02b8\u02b9\u0003\u0086C\u0000\u02b9\u02ba\u0005C\u0000\u0000\u02ba\u02bb"+
"\u0003\u0086C\u0000\u02bb\u02c5\u0001\u0000\u0000\u0000\u02bc\u02bd\u0005"+
"E\u0000\u0000\u02bd\u02be\u0005)\u0000\u0000\u02be\u02bf\u0003\u0084B"+
"\u0000\u02bf\u02c0\u0005B\u0000\u0000\u02c0\u02c1\u0003\u0086C\u0000\u02c1"+
"\u02c2\u0005C\u0000\u0000\u02c2\u02c3\u0003\u0086C\u0000\u02c3\u02c5\u0001"+
"\u0000\u0000\u0000\u02c4\u02a5\u0001\u0000\u0000\u0000\u02c4\u02a7\u0001"+
"\u0000\u0000\u0000\u02c4\u02a8\u0001\u0000\u0000\u0000\u02c4\u02a9\u0001"+
"\u0000\u0000\u0000\u02c4\u02ae\u0001\u0000\u0000\u0000\u02c4\u02b0\u0001"+
"\u0000\u0000\u0000\u02c4\u02b4\u0001\u0000\u0000\u0000\u02c4\u02bc\u0001"+
"\u0000\u0000\u0000\u02c5\u02f6\u0001\u0000\u0000\u0000\u02c6\u02c7\n\b"+
"\u0000\u0000\u02c7\u02c8\u0007\u0004\u0000\u0000\u02c8\u02f5\u0003~?\t"+
"\u02c9\u02ca\n\u0007\u0000\u0000\u02ca\u02cb\u0003\u0096K\u0000\u02cb"+
"\u02cc\u0003~?\b\u02cc\u02f5\u0001\u0000\u0000\u0000\u02cd\u02ce\n\u0006"+
"\u0000\u0000\u02ce\u02cf\u0007\u0005\u0000\u0000\u02cf\u02f5\u0003~?\u0007"+
"\u02d0\u02d1\n\u0005\u0000\u0000\u02d1\u02d3\u0007\u0006\u0000\u0000\u02d2"+
"\u02d4\u0003\u008aE\u0000\u02d3\u02d2\u0001\u0000\u0000\u0000\u02d3\u02d4"+
"\u0001\u0000\u0000\u0000\u02d4\u02d5\u0001\u0000\u0000\u0000\u02d5\u02f5"+
"\u0003~?\u0006\u02d6\u02d7\n\u0004\u0000\u0000\u02d7\u02d8\u0005C\u0000"+
"\u0000\u02d8\u02f5\u0003~?\u0005\u02d9\u02da\n\u0003\u0000\u0000\u02da"+
"\u02db\u0007\u0007\u0000\u0000\u02db\u02f5\u0003~?\u0004\u02dc\u02dd\n"+
"\u0002\u0000\u0000\u02dd\u02de\u0005M\u0000\u0000\u02de\u02f5\u0003~?"+
"\u0003\u02df\u02e0\n\u0001\u0000\u0000\u02e0\u02e1\u0007\b\u0000\u0000"+
"\u02e1\u02f5\u0003~?\u0002\u02e2\u02e3\n\u0010\u0000\u0000\u02e3\u02e5"+
"\u00059\u0000\u0000\u02e4\u02e6\u0005:\u0000\u0000\u02e5\u02e4\u0001\u0000"+
"\u0000\u0000\u02e5\u02e6\u0001\u0000\u0000\u0000\u02e6\u02e7\u0001\u0000"+
"\u0000\u0000\u02e7\u02f5\u0007\t\u0000\u0000\u02e8\u02e9\n\u000f\u0000"+
"\u0000\u02e9\u02ea\u0007\n\u0000\u0000\u02ea\u02f5\u0003(\u0014\u0000"+
"\u02eb\u02ed\n\u000b\u0000\u0000\u02ec\u02ee\u0005A\u0000\u0000\u02ed"+
"\u02ec\u0001\u0000\u0000\u0000\u02ed\u02ee\u0001\u0000\u0000\u0000\u02ee"+
"\u02ef\u0001\u0000\u0000\u0000\u02ef\u02f0\u0005B\u0000\u0000\u02f0\u02f1"+
"\u0003\u0086C\u0000\u02f1\u02f2\u0005C\u0000\u0000\u02f2\u02f3\u0003\u0086"+
"C\u0000\u02f3\u02f5\u0001\u0000\u0000\u0000\u02f4\u02c6\u0001\u0000\u0000"+
"\u0000\u02f4\u02c9\u0001\u0000\u0000\u0000\u02f4\u02cd\u0001\u0000\u0000"+
"\u0000\u02f4\u02d0\u0001\u0000\u0000\u0000\u02f4\u02d6\u0001\u0000\u0000"+
"\u0000\u02f4\u02d9\u0001\u0000\u0000\u0000\u02f4\u02dc\u0001\u0000\u0000"+
"\u0000\u02f4\u02df\u0001\u0000\u0000\u0000\u02f4\u02e2\u0001\u0000\u0000"+
"\u0000\u02f4\u02e8\u0001\u0000\u0000\u0000\u02f4\u02eb\u0001\u0000\u0000"+
"\u0000\u02f5\u02f8\u0001\u0000\u0000\u0000\u02f6\u02f4\u0001\u0000\u0000"+
"\u0000\u02f6\u02f7\u0001\u0000\u0000\u0000\u02f7\u007f\u0001\u0000\u0000"+
"\u0000\u02f8\u02f6\u0001\u0000\u0000\u0000\u02f9\u02fa\u0007\u000b\u0000"+
"\u0000\u02fa\u0081\u0001\u0000\u0000\u0000\u02fb\u0301\u0003\u0080@\u0000"+
"\u02fc\u0301\u0005Z\u0000\u0000\u02fd\u0301\u0005[\u0000\u0000\u02fe\u0301"+
"\u0005\\\u0000\u0000\u02ff\u0301\u0005]\u0000\u0000\u0300\u02fb\u0001"+
"\u0000\u0000\u0000\u0300\u02fc\u0001\u0000\u0000\u0000\u0300\u02fd\u0001"+
"\u0000\u0000\u0000\u0300\u02fe\u0001\u0000\u0000\u0000\u0300\u02ff\u0001"+
"\u0000\u0000\u0000\u0301\u0083\u0001\u0000\u0000\u0000\u0302\u0303\u0007"+
"\f\u0000\u0000\u0303\u0085\u0001\u0000\u0000\u0000\u0304\u0305\u0006C"+
"\uffff\uffff\u0000\u0305\u0353\u0003\u0098L\u0000\u0306\u0307\u0005f\u0000"+
"\u0000\u0307\u0308\u0003~?\u0000\u0308\u030b\u0005g\u0000\u0000\u0309"+
"\u030c\u0003(\u0014\u0000\u030a\u030c\u0003\u00d2i\u0000\u030b\u0309\u0001"+
"\u0000\u0000\u0000\u030b\u030a\u0001\u0000\u0000\u0000\u030c\u0353\u0001"+
"\u0000\u0000\u0000\u030d\u030e\u0007\r\u0000\u0000\u030e\u0353\u0003\u0086"+
"C\u0012\u030f\u0310\u0007\u000e\u0000\u0000\u0310\u0311\u0005l\u0000\u0000"+
"\u0311\u0353\u0003\u0086C\u0011\u0312\u0313\u0003\u0082A\u0000\u0313\u0314"+
"\u0005\u0013\u0000\u0000\u0314\u0315\u0003\u0086C\u0010\u0315\u0353\u0001"+
"\u0000\u0000\u0000\u0316\u0317\u0005D\u0000\u0000\u0317\u0318\u0005)\u0000"+
"\u0000\u0318\u0319\u0003\u0084B\u0000\u0319\u031a\u0005l\u0000\u0000\u031a"+
"\u031b\u0003\u0086C\u000f\u031b\u0353\u0001\u0000\u0000\u0000\u031c\u031d"+
"\u0005E\u0000\u0000\u031d\u031e\u0005)\u0000\u0000\u031e\u031f\u0003\u0084"+
"B\u0000\u031f\u0320\u0005l\u0000\u0000\u0320\u0321\u0003\u0086C\u000e"+
"\u0321\u0353\u0001\u0000\u0000\u0000\u0322\u0323\u0005m\u0000\u0000\u0323"+
"\u0324\u0005l\u0000\u0000\u0324\u0353\u0003\u0086C\r\u0325\u0326\u0005"+
"n\u0000\u0000\u0326\u0327\u0005l\u0000\u0000\u0327\u0353\u0003\u0086C"+
"\f\u0328\u0329\u0005o\u0000\u0000\u0329\u032a\u0005l\u0000\u0000\u032a"+
"\u0353\u0003\u0086C\u000b\u032b\u032c\u0005p\u0000\u0000\u032c\u032d\u0005"+
"\u0013\u0000\u0000\u032d\u0353\u0003\u0086C\n\u032e\u032f\u0005q\u0000"+
"\u0000\u032f\u0330\u0005\u0013\u0000\u0000\u0330\u0353\u0003\u0086C\t"+
"\u0331\u0332\u0007\u000f\u0000\u0000\u0332\u0353\u0003*\u0015\u0000\u0333"+
"\u0334\u0005z\u0000\u0000\u0334\u0335\u0003~?\u0000\u0335\u0336\u0005"+
"{\u0000\u0000\u0336\u0337\u0003~?\u0000\u0337\u0338\u0005|\u0000\u0000"+
"\u0338\u0339\u0003~?\u0000\u0339\u0353\u0001\u0000\u0000\u0000\u033a\u033c"+
"\u0005}\u0000\u0000\u033b\u033d\u0003~?\u0000\u033c\u033b\u0001\u0000"+
"\u0000\u0000\u033c\u033d\u0001\u0000\u0000\u0000\u033d\u033f\u0001\u0000"+
"\u0000\u0000\u033e\u0340\u0003\u0088D\u0000\u033f\u033e\u0001\u0000\u0000"+
"\u0000\u0340\u0341\u0001\u0000\u0000\u0000\u0341\u033f\u0001\u0000\u0000"+
"\u0000\u0341\u0342\u0001\u0000\u0000\u0000\u0342\u0343\u0001\u0000\u0000"+
"\u0000\u0343\u0344\u0005|\u0000\u0000\u0344\u0345\u0003~?\u0000\u0345"+
"\u0346\u0005k\u0000\u0000\u0346\u0353\u0001\u0000\u0000\u0000\u0347\u0348"+
"\u0007\u0010\u0000\u0000\u0348\u0353\u0003~?\u0000\u0349\u034a\u0007\u0011"+
"\u0000\u0000\u034a\u0350\u0003~?\u0000\u034b\u034e\u0005\u0081\u0000\u0000"+
"\u034c\u034f\u0003\u0080@\u0000\u034d\u034f\u0003~?\u0000\u034e\u034c"+
"\u0001\u0000\u0000\u0000\u034e\u034d\u0001\u0000\u0000\u0000\u034f\u0351"+
"\u0001\u0000\u0000\u0000\u0350\u034b\u0001\u0000\u0000\u0000\u0350\u0351"+
"\u0001\u0000\u0000\u0000\u0351\u0353\u0001\u0000\u0000\u0000\u0352\u0304"+
"\u0001\u0000\u0000\u0000\u0352\u0306\u0001\u0000\u0000\u0000\u0352\u030d"+
"\u0001\u0000\u0000\u0000\u0352\u030f\u0001\u0000\u0000\u0000\u0352\u0312"+
"\u0001\u0000\u0000\u0000\u0352\u0316\u0001\u0000\u0000\u0000\u0352\u031c"+
"\u0001\u0000\u0000\u0000\u0352\u0322\u0001\u0000\u0000\u0000\u0352\u0325"+
"\u0001\u0000\u0000\u0000\u0352\u0328\u0001\u0000\u0000\u0000\u0352\u032b"+
"\u0001\u0000\u0000\u0000\u0352\u032e\u0001\u0000\u0000\u0000\u0352\u0331"+
"\u0001\u0000\u0000\u0000\u0352\u0333\u0001\u0000\u0000\u0000\u0352\u033a"+
"\u0001\u0000\u0000\u0000\u0352\u0347\u0001\u0000\u0000\u0000\u0352\u0349"+
"\u0001\u0000\u0000\u0000\u0353\u0367\u0001\u0000\u0000\u0000\u0354\u0355"+
"\n\u0007\u0000\u0000\u0355\u0356\u0005t\u0000\u0000\u0356\u0366\u0003"+
"\u0086C\b\u0357\u0358\n\u0006\u0000\u0000\u0358\u0359\u0007\u0012\u0000"+
"\u0000\u0359\u0366\u0003\u0086C\u0007\u035a\u035b\n\u0005\u0000\u0000"+
"\u035b\u035c\u0007\u0013\u0000\u0000\u035c\u0366\u0003\u0086C\u0006\u035d"+
"\u035e\n\u0015\u0000\u0000\u035e\u035f\u0005\u0011\u0000\u0000\u035f\u0366"+
"\u0003\u009aM\u0000\u0360\u0361\n\u0014\u0000\u0000\u0361\u0362\u0005"+
"&\u0000\u0000\u0362\u0363\u0003~?\u0000\u0363\u0364\u0005(\u0000\u0000"+
"\u0364\u0366\u0001\u0000\u0000\u0000\u0365\u0354\u0001\u0000\u0000\u0000"+
"\u0365\u0357\u0001\u0000\u0000\u0000\u0365\u035a\u0001\u0000\u0000\u0000"+
"\u0365\u035d\u0001\u0000\u0000\u0000\u0365\u0360\u0001\u0000\u0000\u0000"+
"\u0366\u0369\u0001\u0000\u0000\u0000\u0367\u0365\u0001\u0000\u0000\u0000"+
"\u0367\u0368\u0001\u0000\u0000\u0000\u0368\u0087\u0001\u0000\u0000\u0000"+
"\u0369\u0367\u0001\u0000\u0000\u0000\u036a\u036b\u0005\u0082\u0000\u0000"+
"\u036b\u036c\u0003~?\u0000\u036c\u036d\u0005{\u0000\u0000\u036d\u036e"+
"\u0003~?\u0000\u036e\u0089\u0001\u0000\u0000\u0000\u036f\u0370\u0003\u0080"+
"@\u0000\u0370\u0371\u0005l\u0000\u0000\u0371\u008b\u0001\u0000\u0000\u0000"+
"\u0372\u0373\u0007\u0014\u0000\u0000\u0373\u008d\u0001\u0000\u0000\u0000"+
"\u0374\u0375\u0007\u0015\u0000\u0000\u0375\u008f\u0001\u0000\u0000\u0000"+
"\u0376\u0377\u0007\u0016\u0000\u0000\u0377\u0091\u0001\u0000\u0000\u0000"+
"\u0378\u037a\u0003\u00d0h\u0000\u0379\u037b\u0003\u008eG\u0000\u037a\u0379"+
"\u0001\u0000\u0000\u0000\u037a\u037b\u0001\u0000\u0000\u0000\u037b\u0380"+
"\u0001\u0000\u0000\u0000\u037c\u037d\u0003\u0090H\u0000\u037d\u037e\u0003"+
"\u00d0h\u0000\u037e\u0380\u0001\u0000\u0000\u0000\u037f\u0378\u0001\u0000"+
"\u0000\u0000\u037f\u037c\u0001\u0000\u0000\u0000\u0380\u0093\u0001\u0000"+
"\u0000\u0000\u0381\u0383\u0005\u0089\u0000\u0000\u0382\u0381\u0001\u0000"+
"\u0000\u0000\u0382\u0383\u0001\u0000\u0000\u0000\u0383\u0384\u0001\u0000"+
"\u0000\u0000\u0384\u038a\u0007\u0017\u0000\u0000\u0385\u0387\u0007\u0017"+
"\u0000\u0000\u0386\u0388\u0005\u008c\u0000\u0000\u0387\u0386\u0001\u0000"+
"\u0000\u0000\u0387\u0388\u0001\u0000\u0000\u0000\u0388\u038a\u0001\u0000"+
"\u0000\u0000\u0389\u0382\u0001\u0000\u0000\u0000\u0389\u0385\u0001\u0000"+
"\u0000\u0000\u038a\u0095\u0001\u0000\u0000\u0000\u038b\u038d\u0007\u0018"+
"\u0000\u0000\u038c\u038b\u0001\u0000\u0000\u0000\u038c\u038d\u0001\u0000"+
"\u0000\u0000\u038d\u038e\u0001\u0000\u0000\u0000\u038e\u0390\u0005\u0090"+
"\u0000\u0000\u038f\u0391\u0003\u0080@\u0000\u0390\u038f\u0001\u0000\u0000"+
"\u0000\u0390\u0391\u0001\u0000\u0000\u0000\u0391\u0394\u0001\u0000\u0000"+
"\u0000\u0392\u0395\u0003\u008cF\u0000\u0393\u0395\u0005>\u0000\u0000\u0394"+
"\u0392\u0001\u0000\u0000\u0000\u0394\u0393\u0001\u0000\u0000\u0000\u0395"+
"\u0397\u0001\u0000\u0000\u0000\u0396\u0398\u0007\u000e\u0000\u0000\u0397"+
"\u0396\u0001\u0000\u0000\u0000\u0397\u0398\u0001\u0000\u0000\u0000\u0398"+
"\u03dd\u0001\u0000\u0000\u0000\u0399\u039b\u0005A\u0000\u0000\u039a\u0399"+
"\u0001\u0000\u0000\u0000\u039a\u039b\u0001\u0000\u0000\u0000\u039b\u039c"+
"\u0001\u0000\u0000\u0000\u039c\u039e\u0005\u0091\u0000\u0000\u039d\u039f"+
"\u0003\u008aE\u0000\u039e\u039d\u0001\u0000\u0000\u0000\u039e\u039f\u0001"+
"\u0000\u0000\u0000\u039f\u03a1\u0001\u0000\u0000\u0000\u03a0\u03a2\u0007"+
"\u000e\u0000\u0000\u03a1\u03a0\u0001\u0000\u0000\u0000\u03a1\u03a2\u0001"+
"\u0000\u0000\u0000\u03a2\u03dd\u0001\u0000\u0000\u0000\u03a3\u03a5\u0007"+
"\u0018\u0000\u0000\u03a4\u03a3\u0001\u0000\u0000\u0000\u03a4\u03a5\u0001"+
"\u0000\u0000\u0000\u03a5\u03a7\u0001\u0000\u0000\u0000\u03a6\u03a8\u0005"+
"A\u0000\u0000\u03a7\u03a6\u0001\u0000\u0000\u0000\u03a7\u03a8\u0001\u0000"+
"\u0000\u0000\u03a8\u03a9\u0001\u0000\u0000\u0000\u03a9\u03ab\u0007\u0019"+
"\u0000\u0000\u03aa\u03ac\u0003\u008aE\u0000\u03ab\u03aa\u0001\u0000\u0000"+
"\u0000\u03ab\u03ac\u0001\u0000\u0000\u0000\u03ac\u03dd\u0001\u0000\u0000"+
"\u0000\u03ad\u03af\u0007\u0018\u0000\u0000\u03ae\u03ad\u0001\u0000\u0000"+
"\u0000\u03ae\u03af\u0001\u0000\u0000\u0000\u03af\u03b1\u0001\u0000\u0000"+
"\u0000\u03b0\u03b2\u0003\u0092I\u0000\u03b1\u03b0\u0001\u0000\u0000\u0000"+
"\u03b1\u03b2\u0001\u0000\u0000\u0000\u03b2\u03b3\u0001\u0000\u0000\u0000"+
"\u03b3\u03b5\u0003\u0094J\u0000\u03b4\u03b6\u0003\u008aE\u0000\u03b5\u03b4"+
"\u0001\u0000\u0000\u0000\u03b5\u03b6\u0001\u0000\u0000\u0000\u03b6\u03b8"+
"\u0001\u0000\u0000\u0000\u03b7\u03b9\u0007\u000e\u0000\u0000\u03b8\u03b7"+
"\u0001\u0000\u0000\u0000\u03b8\u03b9\u0001\u0000\u0000\u0000\u03b9\u03dd"+
"\u0001\u0000\u0000\u0000\u03ba\u03bc\u0007\u0018\u0000\u0000\u03bb\u03ba"+
"\u0001\u0000\u0000\u0000\u03bb\u03bc\u0001\u0000\u0000\u0000\u03bc\u03be"+
"\u0001\u0000\u0000\u0000\u03bd\u03bf\u0005A\u0000\u0000\u03be\u03bd\u0001"+
"\u0000\u0000\u0000\u03be\u03bf\u0001\u0000\u0000\u0000\u03bf\u03c0\u0001"+
"\u0000\u0000\u0000\u03c0\u03c1\u0005\u0094\u0000\u0000\u03c1\u03c2\u0003"+
"\u00d0h\u0000\u03c2\u03c4\u0005l\u0000\u0000\u03c3\u03c5\u0007\u000e\u0000"+
"\u0000\u03c4\u03c3\u0001\u0000\u0000\u0000\u03c4\u03c5\u0001\u0000\u0000"+
"\u0000\u03c5\u03dd\u0001\u0000\u0000\u0000\u03c6\u03c8\u0005\u0095\u0000"+
"\u0000\u03c7\u03c9\u0007\u0017\u0000\u0000\u03c8\u03c7\u0001\u0000\u0000"+
"\u0000\u03c8\u03c9\u0001\u0000\u0000\u0000\u03c9\u03cb\u0001\u0000\u0000"+
"\u0000\u03ca\u03cc\u0003\u008aE\u0000\u03cb\u03ca\u0001\u0000\u0000\u0000"+
"\u03cb\u03cc\u0001\u0000\u0000\u0000\u03cc\u03dd\u0001\u0000\u0000\u0000"+
"\u03cd\u03cf\u0005\u0096\u0000\u0000\u03ce\u03d0\u0007\u0017\u0000\u0000"+
"\u03cf\u03ce\u0001\u0000\u0000\u0000\u03cf\u03d0\u0001\u0000\u0000\u0000"+
"\u03d0\u03d2\u0001\u0000\u0000\u0000\u03d1\u03d3\u0003\u008aE\u0000\u03d2"+
"\u03d1\u0001\u0000\u0000\u0000\u03d2\u03d3\u0001\u0000\u0000\u0000\u03d3"+
"\u03dd\u0001\u0000\u0000\u0000\u03d4\u03d6\u0005\u008d\u0000\u0000\u03d5"+
"\u03d7\u0003\u008aE\u0000\u03d6\u03d5\u0001\u0000\u0000\u0000\u03d6\u03d7"+
"\u0001\u0000\u0000\u0000\u03d7\u03dd\u0001\u0000\u0000\u0000\u03d8\u03da"+
"\u0005\u008e\u0000\u0000\u03d9\u03db\u0003\u008aE\u0000\u03da\u03d9\u0001"+
"\u0000\u0000\u0000\u03da\u03db\u0001\u0000\u0000\u0000\u03db\u03dd\u0001"+
"\u0000\u0000\u0000\u03dc\u038c\u0001\u0000\u0000\u0000\u03dc\u039a\u0001"+
"\u0000\u0000\u0000\u03dc\u03a4\u0001\u0000\u0000\u0000\u03dc\u03ae\u0001"+
"\u0000\u0000\u0000\u03dc\u03bb\u0001\u0000\u0000\u0000\u03dc\u03c6\u0001"+
"\u0000\u0000\u0000\u03dc\u03cd\u0001\u0000\u0000\u0000\u03dc\u03d4\u0001"+
"\u0000\u0000\u0000\u03dc\u03d8\u0001\u0000\u0000\u0000\u03dd\u0097\u0001"+
"\u0000\u0000\u0000\u03de\u03ec\u0003\u009eO\u0000\u03df\u03ec\u0003\u00a4"+
"R\u0000\u03e0\u03ec\u0003\u00ccf\u0000\u03e1\u03ec\u0003\u00a6S\u0000"+
"\u03e2\u03ec\u0003\u00a8T\u0000\u03e3\u03ec\u0003\u00acV\u0000\u03e4\u03ec"+
"\u0003\u00b0X\u0000\u03e5\u03ec\u0003\u00b4Z\u0000\u03e6\u03ec\u0003\u00b6"+
"[\u0000\u03e7\u03e8\u0005\u001f\u0000\u0000\u03e8\u03e9\u0003~?\u0000"+
"\u03e9\u03ea\u0005 \u0000\u0000\u03ea\u03ec\u0001\u0000\u0000\u0000\u03eb"+
"\u03de\u0001\u0000\u0000\u0000\u03eb\u03df\u0001\u0000\u0000\u0000\u03eb"+
"\u03e0\u0001\u0000\u0000\u0000\u03eb\u03e1\u0001\u0000\u0000\u0000\u03eb"+
"\u03e2\u0001\u0000\u0000\u0000\u03eb\u03e3\u0001\u0000\u0000\u0000\u03eb"+
"\u03e4\u0001\u0000\u0000\u0000\u03eb\u03e5\u0001\u0000\u0000\u0000\u03eb"+
"\u03e6\u0001\u0000\u0000\u0000\u03eb\u03e7\u0001\u0000\u0000\u0000\u03ec"+
"\u0099\u0001\u0000\u0000\u0000\u03ed\u03f0\u0003\u00c4b\u0000\u03ee\u03f0"+
"\u0003\u009cN\u0000\u03ef\u03ed\u0001\u0000\u0000\u0000\u03ef\u03ee\u0001"+
"\u0000\u0000\u0000\u03f0\u009b\u0001\u0000\u0000\u0000\u03f1\u03f2\u0003"+
"\u00c8d\u0000\u03f2\u03f4\u0005\u001f\u0000\u0000\u03f3\u03f5\u0003\u00ce"+
"g\u0000\u03f4\u03f3\u0001\u0000\u0000\u0000\u03f4\u03f5\u0001\u0000\u0000"+
"\u0000\u03f5\u03f6\u0001\u0000\u0000\u0000\u03f6\u03f7\u0005 \u0000\u0000"+
"\u03f7\u009d\u0001\u0000\u0000\u0000\u03f8\u03fe\u0003\u00c4b\u0000\u03f9"+
"\u03fe\u0003\u00a0P\u0000\u03fa\u03fe\u0005\u0097\u0000\u0000\u03fb\u03fe"+
"\u0005\u0098\u0000\u0000\u03fc\u03fe\u0005\u0099\u0000\u0000\u03fd\u03f8"+
"\u0001\u0000\u0000\u0000\u03fd\u03f9\u0001\u0000\u0000\u0000\u03fd\u03fa"+
"\u0001\u0000\u0000\u0000\u03fd\u03fb\u0001\u0000\u0000\u0000\u03fd\u03fc"+
"\u0001\u0000\u0000\u0000\u03fe\u009f\u0001\u0000\u0000\u0000\u03ff\u0400"+
"\u0003\u00c4b\u0000\u0400\u0402\u0005\u001f\u0000\u0000\u0401\u0403\u0003"+
"\u00ceg\u0000\u0402\u0401\u0001\u0000\u0000\u0000\u0402\u0403\u0001\u0000"+
"\u0000\u0000\u0403\u0404\u0001\u0000\u0000\u0000\u0404\u0405\u0005 \u0000"+
"\u0000\u0405\u00a1\u0001\u0000\u0000\u0000\u0406\u0407\u0003\u00d0h\u0000"+
"\u0407\u0408\u0005\u000b\u0000\u0000\u0408\u0409\u0003\u00d0h\u0000\u0409"+
"\u00a3\u0001\u0000\u0000\u0000\u040a\u0415\u0007\u001a\u0000\u0000\u040b"+
"\u0415\u0005;\u0000\u0000\u040c\u0415\u0005\u00a5\u0000\u0000\u040d\u0415"+
"\u0005\u00a6\u0000\u0000\u040e\u0415\u0005\u00a0\u0000\u0000\u040f\u0415"+
"\u0005\u009f\u0000\u0000\u0410\u0415\u0005\u00a1\u0000\u0000\u0411\u0415"+
"\u0005\u00a2\u0000\u0000\u0412\u0415\u0003\u00d0h\u0000\u0413\u0415\u0003"+
"\u00a2Q\u0000\u0414\u040a\u0001\u0000\u0000\u0000\u0414\u040b\u0001\u0000"+
"\u0000\u0000\u0414\u040c\u0001\u0000\u0000\u0000\u0414\u040d\u0001\u0000"+
"\u0000\u0000\u0414\u040e\u0001\u0000\u0000\u0000\u0414\u040f\u0001\u0000"+
"\u0000\u0000\u0414\u0410\u0001\u0000\u0000\u0000\u0414\u0411\u0001\u0000"+
"\u0000\u0000\u0414\u0412\u0001\u0000\u0000\u0000\u0414\u0413\u0001\u0000"+
"\u0000\u0000\u0415\u00a5\u0001\u0000\u0000\u0000\u0416\u0417\u0005\u0018"+
"\u0000\u0000\u0417\u0418\u0007\u001b\u0000\u0000\u0418\u0419\u0003~?\u0000"+
"\u0419\u041a\u0005\u000f\u0000\u0000\u041a\u041b\u0003~?\u0000\u041b\u041c"+
"\u0007\u001c\u0000\u0000\u041c\u00a7\u0001\u0000\u0000\u0000\u041d\u041f"+
"\u0005\u0019\u0000\u0000\u041e\u041d\u0001\u0000\u0000\u0000\u041e\u041f"+
"\u0001\u0000\u0000\u0000\u041f\u0420\u0001\u0000\u0000\u0000\u0420\u042a"+
"\u0005\u000e\u0000\u0000\u0421\u042b\u0005\u000b\u0000\u0000\u0422\u0427"+
"\u0003\u00aaU\u0000\u0423\u0424\u0005\u000f\u0000\u0000\u0424\u0426\u0003"+
"\u00aaU\u0000\u0425\u0423\u0001\u0000\u0000\u0000\u0426\u0429\u0001\u0000"+
"\u0000\u0000\u0427\u0425\u0001\u0000\u0000\u0000\u0427\u0428\u0001\u0000"+
"\u0000\u0000\u0428\u042b\u0001\u0000\u0000\u0000\u0429\u0427\u0001\u0000"+
"\u0000\u0000\u042a\u0421\u0001\u0000\u0000\u0000\u042a\u0422\u0001\u0000"+
"\u0000\u0000\u042b\u042c\u0001\u0000\u0000\u0000\u042c\u042d\u0005\u0010"+
"\u0000\u0000\u042d\u00a9\u0001\u0000\u0000\u0000\u042e\u042f\u0003\u00c4"+
"b\u0000\u042f\u0430\u0005\u000b\u0000\u0000\u0430\u0431\u0003~?\u0000"+
"\u0431\u00ab\u0001\u0000\u0000\u0000\u0432\u0433\u0003*\u0015\u0000\u0433"+
"\u043d\u0005\u000e\u0000\u0000\u0434\u043e\u0005\u000b\u0000\u0000\u0435"+
"\u043a\u0003\u00aeW\u0000\u0436\u0437\u0005\u000f\u0000\u0000\u0437\u0439"+
"\u0003\u00aeW\u0000\u0438\u0436\u0001\u0000\u0000\u0000\u0439\u043c\u0001"+
"\u0000\u0000\u0000\u043a\u0438\u0001\u0000\u0000\u0000\u043a\u043b\u0001"+
"\u0000\u0000\u0000\u043b\u043e\u0001\u0000\u0000\u0000\u043c\u043a\u0001"+
"\u0000\u0000\u0000\u043d\u0434\u0001\u0000\u0000\u0000\u043d\u0435\u0001"+
"\u0000\u0000\u0000\u043e\u043f\u0001\u0000\u0000\u0000\u043f\u0440\u0005"+
"\u0010\u0000\u0000\u0440\u00ad\u0001\u0000\u0000\u0000\u0441\u0442\u0003"+
"\u00c4b\u0000\u0442\u0443\u0005\u000b\u0000\u0000\u0443\u0444\u0003~?"+
"\u0000\u0444\u00af\u0001\u0000\u0000\u0000\u0445\u044a\u0005\u0015\u0000"+
"\u0000\u0446\u0447\u0005\u0016\u0000\u0000\u0447\u0448\u0003(\u0014\u0000"+
"\u0448\u0449\u0005\u0017\u0000\u0000\u0449\u044b\u0001\u0000\u0000\u0000"+
"\u044a\u0446\u0001\u0000\u0000\u0000\u044a\u044b\u0001\u0000\u0000\u0000"+
"\u044b\u044d\u0001\u0000\u0000\u0000\u044c\u0445\u0001\u0000\u0000\u0000"+
"\u044c\u044d\u0001\u0000\u0000\u0000\u044d\u044e\u0001\u0000\u0000\u0000"+
"\u044e\u0457\u0005\u000e\u0000\u0000\u044f\u0454\u0003~?\u0000\u0450\u0451"+
"\u0005\u000f\u0000\u0000\u0451\u0453\u0003~?\u0000\u0452\u0450\u0001\u0000"+
"\u0000\u0000\u0453\u0456\u0001\u0000\u0000\u0000\u0454\u0452\u0001\u0000"+
"\u0000\u0000\u0454\u0455\u0001\u0000\u0000\u0000\u0455\u0458\u0001\u0000"+
"\u0000\u0000\u0456\u0454\u0001\u0000\u0000\u0000\u0457\u044f\u0001\u0000"+
"\u0000\u0000\u0457\u0458\u0001\u0000\u0000\u0000\u0458\u0459\u0001\u0000"+
"\u0000\u0000\u0459\u045a\u0005\u0010\u0000\u0000\u045a\u00b1\u0001\u0000"+
"\u0000\u0000\u045b\u045c\u0005\u009a\u0000\u0000\u045c\u045d\u0005\u00a5"+
"\u0000\u0000\u045d\u00b3\u0001\u0000\u0000\u0000\u045e\u045f\u0005\u009b"+
"\u0000\u0000\u045f\u0460\u0005\u00a5\u0000\u0000\u0460\u0461\u0005\u0013"+
"\u0000\u0000\u0461\u0463\u0003\u0016\u000b\u0000\u0462\u0464\u0003\u00b2"+
"Y\u0000\u0463\u0462\u0001\u0000\u0000\u0000\u0463\u0464\u0001\u0000\u0000"+
"\u0000\u0464\u00b5\u0001\u0000\u0000\u0000\u0465\u0466\u0005\u009c\u0000"+
"\u0000\u0466\u0467\u0005\u000e\u0000\u0000\u0467\u046c\u0003\u00b4Z\u0000"+
"\u0468\u0469\u0005\u000f\u0000\u0000\u0469\u046b\u0003\u00b4Z\u0000\u046a"+
"\u0468\u0001\u0000\u0000\u0000\u046b\u046e\u0001\u0000\u0000\u0000\u046c"+
"\u046a\u0001\u0000\u0000\u0000\u046c\u046d\u0001\u0000\u0000\u0000\u046d"+
"\u046f\u0001\u0000\u0000\u0000\u046e\u046c\u0001\u0000\u0000\u0000\u046f"+
"\u0471\u0005\u0010\u0000\u0000\u0470\u0472\u0003\u00b2Y\u0000\u0471\u0470"+
"\u0001\u0000\u0000\u0000\u0471\u0472\u0001\u0000\u0000\u0000\u0472\u00b7"+
"\u0001\u0000\u0000\u0000\u0473\u0474\u0007\u001d\u0000\u0000\u0474\u00b9"+
"\u0001\u0000\u0000\u0000\u0475\u0476\u0007\u001e\u0000\u0000\u0476\u00bb"+
"\u0001\u0000\u0000\u0000\u0477\u0478\u0007\u001f\u0000\u0000\u0478\u00bd"+
"\u0001\u0000\u0000\u0000\u0479\u047a\u0007 \u0000\u0000\u047a\u00bf\u0001"+
"\u0000\u0000\u0000\u047b\u047c\u0007!\u0000\u0000\u047c\u00c1\u0001\u0000"+
"\u0000\u0000\u047d\u047e\u0007\"\u0000\u0000\u047e\u00c3\u0001\u0000\u0000"+
"\u0000\u047f\u0482\u0003\u00cae\u0000\u0480\u0482\u0003\u00bc^\u0000\u0481"+
"\u047f\u0001\u0000\u0000\u0000\u0481\u0480\u0001\u0000\u0000\u0000\u0482"+
"\u00c5\u0001\u0000\u0000\u0000\u0483\u0486\u0003\u00c4b\u0000\u0484\u0486"+
"\u0003\u00c2a\u0000\u0485\u0483\u0001\u0000\u0000\u0000\u0485\u0484\u0001"+
"\u0000\u0000\u0000\u0486\u00c7\u0001\u0000\u0000\u0000\u0487\u048a\u0003"+
"\u00cae\u0000\u0488\u048a\u0003\u00c0`\u0000\u0489\u0487\u0001\u0000\u0000"+
"\u0000\u0489\u0488\u0001\u0000\u0000\u0000\u048a\u00c9\u0001\u0000\u0000"+
"\u0000\u048b\u048c\u0007#\u0000\u0000\u048c\u00cb\u0001\u0000\u0000\u0000"+
"\u048d\u0490\u0005\u009d\u0000\u0000\u048e\u0491\u0003\u00cae\u0000\u048f"+
"\u0491\u0005\u00a5\u0000\u0000\u0490\u048e\u0001\u0000\u0000\u0000\u0490"+
"\u048f\u0001\u0000\u0000\u0000\u0491\u00cd\u0001\u0000\u0000\u0000\u0492"+
"\u0497\u0003~?\u0000\u0493\u0494\u0005\u000f\u0000\u0000\u0494\u0496\u0003"+
"~?\u0000\u0495\u0493\u0001\u0000\u0000\u0000\u0496\u0499\u0001\u0000\u0000"+
"\u0000\u0497\u0495\u0001\u0000\u0000\u0000\u0497\u0498\u0001\u0000\u0000"+
"\u0000\u0498\u00cf\u0001\u0000\u0000\u0000\u0499\u0497\u0001\u0000\u0000"+
"\u0000\u049a\u049c\u0005\u00a6\u0000\u0000\u049b\u049d\u0003\u00d2i\u0000"+
"\u049c\u049b\u0001\u0000\u0000\u0000\u049c\u049d\u0001\u0000\u0000\u0000"+
"\u049d\u00d1\u0001\u0000\u0000\u0000\u049e\u04a2\u0003\u0080@\u0000\u049f"+
"\u04a2\u0003\u0084B\u0000\u04a0\u04a2\u0005\u00a5\u0000\u0000\u04a1\u049e"+
"\u0001\u0000\u0000\u0000\u04a1\u049f\u0001\u0000\u0000\u0000\u04a1\u04a0"+
"\u0001\u0000\u0000\u0000\u04a2\u00d3\u0001\u0000\u0000\u0000\u0086\u00db"+
"\u00de\u00e3\u00e9\u00f2\u00f8\u00fc\u0102\u0106\u010d\u0112\u0116\u0119"+
"\u0121\u0124\u012c\u012f\u0138\u0140\u0147\u0150\u0153\u015e\u0163\u0168"+
"\u0179\u0180\u0198\u01a7\u01af\u01b3\u01bd\u01c5\u01c8\u01d2\u01d5\u01da"+
"\u01df\u01ec\u01f5\u0205\u020c\u020f\u021b\u0221\u0226\u022a\u022e\u0231"+
"\u0234\u023b\u0244\u0250\u0256\u025a\u0266\u0270\u0273\u0279\u0280\u028a"+
"\u029c\u029e\u02a3\u02b4\u02c4\u02d3\u02e5\u02ed\u02f4\u02f6\u0300\u030b"+
"\u033c\u0341\u034e\u0350\u0352\u0365\u0367\u037a\u037f\u0382\u0387\u0389"+
"\u038c\u0390\u0394\u0397\u039a\u039e\u03a1\u03a4\u03a7\u03ab\u03ae\u03b1"+
"\u03b5\u03b8\u03bb\u03be\u03c4\u03c8\u03cb\u03cf\u03d2\u03d6\u03da\u03dc"+
"\u03eb\u03ef\u03f4\u03fd\u0402\u0414\u041e\u0427\u042a\u043a\u043d\u044a"+
"\u044c\u0454\u0457\u0463\u046c\u0471\u0481\u0485\u0489\u0490\u0497\u049c"+
"\u04a1";
public static final ATN _ATN =
new ATNDeserializer().deserialize(_serializedATN.toCharArray());
static {
_decisionToDFA = new DFA[_ATN.getNumberOfDecisions()];
for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) {
_decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i);
}
}
}