streaming.dsl.parser.DSLSQLParser Maven / Gradle / Ivy
The newest version!
// Generated from DSLSQL.g4 by ANTLR 4.7.1
package streaming.dsl.parser;
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"})
public class DSLSQLParser extends Parser {
static { RuntimeMetaData.checkVersion("4.7.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, STRING=31,
BLOCK_STRING=32, IDENTIFIER=33, BACKQUOTED_IDENTIFIER=34, SIMPLE_COMMENT=35,
BRACKETED_EMPTY_COMMENT=36, BRACKETED_COMMENT=37, WS=38, UNRECOGNIZED=39;
public static final int
RULE_statement = 0, RULE_sql = 1, RULE_overwrite = 2, RULE_append = 3,
RULE_errorIfExists = 4, RULE_ignore = 5, RULE_booleanExpression = 6, RULE_expression = 7,
RULE_ender = 8, RULE_format = 9, RULE_path = 10, RULE_setValue = 11, RULE_setKey = 12,
RULE_command = 13, RULE_db = 14, RULE_asTableName = 15, RULE_tableName = 16,
RULE_functionName = 17, RULE_colGroup = 18, RULE_col = 19, RULE_qualifiedName = 20,
RULE_identifier = 21, RULE_strictIdentifier = 22, RULE_quotedIdentifier = 23;
public static final String[] ruleNames = {
"statement", "sql", "overwrite", "append", "errorIfExists", "ignore",
"booleanExpression", "expression", "ender", "format", "path", "setValue",
"setKey", "command", "db", "asTableName", "tableName", "functionName",
"colGroup", "col", "qualifiedName", "identifier", "strictIdentifier",
"quotedIdentifier"
};
private static final String[] _LITERAL_NAMES = {
null, "'load'", "'.'", "'options'", "'where'", "'as'", "'save'", "'partitionBy'",
"'partitionby'", "'select'", "';'", "'insert'", "'create'", "'drop'",
"'refresh'", "'set'", "'='", "'connect'", "'train'", "'run'", "'predict'",
"'register'", "'unregister'", "'include'", "'overwrite'", "'append'",
"'errorIfExists'", "'ignore'", "'and'", "'!'", "','", null, null, null,
null, null, "'/**/'"
};
private static final String[] _SYMBOLIC_NAMES = {
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, "STRING", "BLOCK_STRING", "IDENTIFIER",
"BACKQUOTED_IDENTIFIER", "SIMPLE_COMMENT", "BRACKETED_EMPTY_COMMENT",
"BRACKETED_COMMENT", "WS", "UNRECOGNIZED"
};
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 "DSLSQL.g4"; }
@Override
public String[] getRuleNames() { return ruleNames; }
@Override
public String getSerializedATN() { return _serializedATN; }
@Override
public ATN getATN() { return _ATN; }
public DSLSQLParser(TokenStream input) {
super(input);
_interp = new ParserATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache);
}
public static class StatementContext extends ParserRuleContext {
public List sql() {
return getRuleContexts(SqlContext.class);
}
public SqlContext sql(int i) {
return getRuleContext(SqlContext.class,i);
}
public List ender() {
return getRuleContexts(EnderContext.class);
}
public EnderContext ender(int i) {
return getRuleContext(EnderContext.class,i);
}
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 DSLSQLListener ) ((DSLSQLListener)listener).enterStatement(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitStatement(this);
}
}
public final StatementContext statement() throws RecognitionException {
StatementContext _localctx = new StatementContext(_ctx, getState());
enterRule(_localctx, 0, RULE_statement);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(53);
_errHandler.sync(this);
_la = _input.LA(1);
while ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__0) | (1L << T__5) | (1L << T__8) | (1L << T__10) | (1L << T__11) | (1L << T__12) | (1L << T__13) | (1L << T__14) | (1L << T__16) | (1L << T__17) | (1L << T__18) | (1L << T__19) | (1L << T__20) | (1L << T__21) | (1L << T__22) | (1L << T__28) | (1L << SIMPLE_COMMENT))) != 0)) {
{
{
setState(48);
sql();
setState(49);
ender();
}
}
setState(55);
_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;
}
public static class SqlContext extends ParserRuleContext {
public FormatContext format() {
return getRuleContext(FormatContext.class,0);
}
public PathContext path() {
return getRuleContext(PathContext.class,0);
}
public TableNameContext tableName() {
return getRuleContext(TableNameContext.class,0);
}
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public List booleanExpression() {
return getRuleContexts(BooleanExpressionContext.class);
}
public BooleanExpressionContext booleanExpression(int i) {
return getRuleContext(BooleanExpressionContext.class,i);
}
public List overwrite() {
return getRuleContexts(OverwriteContext.class);
}
public OverwriteContext overwrite(int i) {
return getRuleContext(OverwriteContext.class,i);
}
public List append() {
return getRuleContexts(AppendContext.class);
}
public AppendContext append(int i) {
return getRuleContext(AppendContext.class,i);
}
public List errorIfExists() {
return getRuleContexts(ErrorIfExistsContext.class);
}
public ErrorIfExistsContext errorIfExists(int i) {
return getRuleContext(ErrorIfExistsContext.class,i);
}
public List ignore() {
return getRuleContexts(IgnoreContext.class);
}
public IgnoreContext ignore(int i) {
return getRuleContext(IgnoreContext.class,i);
}
public ColContext col() {
return getRuleContext(ColContext.class,0);
}
public List colGroup() {
return getRuleContexts(ColGroupContext.class);
}
public ColGroupContext colGroup(int i) {
return getRuleContext(ColGroupContext.class,i);
}
public List setKey() {
return getRuleContexts(SetKeyContext.class);
}
public SetKeyContext setKey(int i) {
return getRuleContext(SetKeyContext.class,i);
}
public List setValue() {
return getRuleContexts(SetValueContext.class);
}
public SetValueContext setValue(int i) {
return getRuleContext(SetValueContext.class,i);
}
public DbContext db() {
return getRuleContext(DbContext.class,0);
}
public List asTableName() {
return getRuleContexts(AsTableNameContext.class);
}
public AsTableNameContext asTableName(int i) {
return getRuleContext(AsTableNameContext.class,i);
}
public FunctionNameContext functionName() {
return getRuleContext(FunctionNameContext.class,0);
}
public CommandContext command() {
return getRuleContext(CommandContext.class,0);
}
public TerminalNode SIMPLE_COMMENT() { return getToken(DSLSQLParser.SIMPLE_COMMENT, 0); }
public SqlContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sql; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterSql(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitSql(this);
}
}
public final SqlContext sql() throws RecognitionException {
SqlContext _localctx = new SqlContext(_ctx, getState());
enterRule(_localctx, 2, RULE_sql);
int _la;
try {
int _alt;
setState(268);
_errHandler.sync(this);
switch (_input.LA(1)) {
case T__0:
enterOuterAlt(_localctx, 1);
{
setState(56);
match(T__0);
setState(57);
format();
setState(58);
match(T__1);
setState(59);
path();
setState(61);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__2 || _la==T__3) {
{
setState(60);
_la = _input.LA(1);
if ( !(_la==T__2 || _la==T__3) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(64);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==IDENTIFIER || _la==BACKQUOTED_IDENTIFIER) {
{
setState(63);
expression();
}
}
setState(69);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__27) {
{
{
setState(66);
booleanExpression();
}
}
setState(71);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(72);
match(T__4);
setState(73);
tableName();
}
break;
case T__5:
enterOuterAlt(_localctx, 2);
{
setState(75);
match(T__5);
setState(82);
_errHandler.sync(this);
_la = _input.LA(1);
while ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__23) | (1L << T__24) | (1L << T__25) | (1L << T__26))) != 0)) {
{
setState(80);
_errHandler.sync(this);
switch (_input.LA(1)) {
case T__23:
{
setState(76);
overwrite();
}
break;
case T__24:
{
setState(77);
append();
}
break;
case T__25:
{
setState(78);
errorIfExists();
}
break;
case T__26:
{
setState(79);
ignore();
}
break;
default:
throw new NoViableAltException(this);
}
}
setState(84);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(85);
tableName();
setState(86);
match(T__4);
setState(87);
format();
setState(88);
match(T__1);
setState(89);
path();
setState(91);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__2 || _la==T__3) {
{
setState(90);
_la = _input.LA(1);
if ( !(_la==T__2 || _la==T__3) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(94);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==IDENTIFIER || _la==BACKQUOTED_IDENTIFIER) {
{
setState(93);
expression();
}
}
setState(99);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__27) {
{
{
setState(96);
booleanExpression();
}
}
setState(101);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(112);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__6 || _la==T__7) {
{
setState(102);
_la = _input.LA(1);
if ( !(_la==T__6 || _la==T__7) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(104);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==IDENTIFIER || _la==BACKQUOTED_IDENTIFIER) {
{
setState(103);
col();
}
}
setState(109);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__29) {
{
{
setState(106);
colGroup();
}
}
setState(111);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
}
}
break;
case T__8:
enterOuterAlt(_localctx, 3);
{
setState(114);
match(T__8);
setState(118);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,12,_ctx);
while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
if ( _alt==1 ) {
{
{
setState(115);
_la = _input.LA(1);
if ( _la <= 0 || (_la==T__9) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
}
setState(120);
_errHandler.sync(this);
_alt = getInterpreter().adaptivePredict(_input,12,_ctx);
}
setState(121);
match(T__4);
setState(122);
tableName();
}
break;
case T__10:
enterOuterAlt(_localctx, 4);
{
setState(123);
match(T__10);
setState(127);
_errHandler.sync(this);
_la = _input.LA(1);
while ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__0) | (1L << T__1) | (1L << T__2) | (1L << T__3) | (1L << T__4) | (1L << T__5) | (1L << T__6) | (1L << T__7) | (1L << T__8) | (1L << T__10) | (1L << T__11) | (1L << T__12) | (1L << T__13) | (1L << T__14) | (1L << T__15) | (1L << T__16) | (1L << T__17) | (1L << T__18) | (1L << T__19) | (1L << T__20) | (1L << T__21) | (1L << T__22) | (1L << T__23) | (1L << T__24) | (1L << T__25) | (1L << T__26) | (1L << T__27) | (1L << T__28) | (1L << T__29) | (1L << STRING) | (1L << BLOCK_STRING) | (1L << IDENTIFIER) | (1L << BACKQUOTED_IDENTIFIER) | (1L << SIMPLE_COMMENT) | (1L << BRACKETED_EMPTY_COMMENT) | (1L << BRACKETED_COMMENT) | (1L << WS) | (1L << UNRECOGNIZED))) != 0)) {
{
{
setState(124);
_la = _input.LA(1);
if ( _la <= 0 || (_la==T__9) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(129);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
break;
case T__11:
enterOuterAlt(_localctx, 5);
{
setState(130);
match(T__11);
setState(134);
_errHandler.sync(this);
_la = _input.LA(1);
while ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__0) | (1L << T__1) | (1L << T__2) | (1L << T__3) | (1L << T__4) | (1L << T__5) | (1L << T__6) | (1L << T__7) | (1L << T__8) | (1L << T__10) | (1L << T__11) | (1L << T__12) | (1L << T__13) | (1L << T__14) | (1L << T__15) | (1L << T__16) | (1L << T__17) | (1L << T__18) | (1L << T__19) | (1L << T__20) | (1L << T__21) | (1L << T__22) | (1L << T__23) | (1L << T__24) | (1L << T__25) | (1L << T__26) | (1L << T__27) | (1L << T__28) | (1L << T__29) | (1L << STRING) | (1L << BLOCK_STRING) | (1L << IDENTIFIER) | (1L << BACKQUOTED_IDENTIFIER) | (1L << SIMPLE_COMMENT) | (1L << BRACKETED_EMPTY_COMMENT) | (1L << BRACKETED_COMMENT) | (1L << WS) | (1L << UNRECOGNIZED))) != 0)) {
{
{
setState(131);
_la = _input.LA(1);
if ( _la <= 0 || (_la==T__9) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(136);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
break;
case T__12:
enterOuterAlt(_localctx, 6);
{
setState(137);
match(T__12);
setState(141);
_errHandler.sync(this);
_la = _input.LA(1);
while ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__0) | (1L << T__1) | (1L << T__2) | (1L << T__3) | (1L << T__4) | (1L << T__5) | (1L << T__6) | (1L << T__7) | (1L << T__8) | (1L << T__10) | (1L << T__11) | (1L << T__12) | (1L << T__13) | (1L << T__14) | (1L << T__15) | (1L << T__16) | (1L << T__17) | (1L << T__18) | (1L << T__19) | (1L << T__20) | (1L << T__21) | (1L << T__22) | (1L << T__23) | (1L << T__24) | (1L << T__25) | (1L << T__26) | (1L << T__27) | (1L << T__28) | (1L << T__29) | (1L << STRING) | (1L << BLOCK_STRING) | (1L << IDENTIFIER) | (1L << BACKQUOTED_IDENTIFIER) | (1L << SIMPLE_COMMENT) | (1L << BRACKETED_EMPTY_COMMENT) | (1L << BRACKETED_COMMENT) | (1L << WS) | (1L << UNRECOGNIZED))) != 0)) {
{
{
setState(138);
_la = _input.LA(1);
if ( _la <= 0 || (_la==T__9) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(143);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
break;
case T__13:
enterOuterAlt(_localctx, 7);
{
setState(144);
match(T__13);
setState(148);
_errHandler.sync(this);
_la = _input.LA(1);
while ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__0) | (1L << T__1) | (1L << T__2) | (1L << T__3) | (1L << T__4) | (1L << T__5) | (1L << T__6) | (1L << T__7) | (1L << T__8) | (1L << T__10) | (1L << T__11) | (1L << T__12) | (1L << T__13) | (1L << T__14) | (1L << T__15) | (1L << T__16) | (1L << T__17) | (1L << T__18) | (1L << T__19) | (1L << T__20) | (1L << T__21) | (1L << T__22) | (1L << T__23) | (1L << T__24) | (1L << T__25) | (1L << T__26) | (1L << T__27) | (1L << T__28) | (1L << T__29) | (1L << STRING) | (1L << BLOCK_STRING) | (1L << IDENTIFIER) | (1L << BACKQUOTED_IDENTIFIER) | (1L << SIMPLE_COMMENT) | (1L << BRACKETED_EMPTY_COMMENT) | (1L << BRACKETED_COMMENT) | (1L << WS) | (1L << UNRECOGNIZED))) != 0)) {
{
{
setState(145);
_la = _input.LA(1);
if ( _la <= 0 || (_la==T__9) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(150);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
break;
case T__14:
enterOuterAlt(_localctx, 8);
{
setState(151);
match(T__14);
setState(152);
setKey();
setState(153);
match(T__15);
setState(154);
setValue();
setState(156);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__2 || _la==T__3) {
{
setState(155);
_la = _input.LA(1);
if ( !(_la==T__2 || _la==T__3) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(159);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==IDENTIFIER || _la==BACKQUOTED_IDENTIFIER) {
{
setState(158);
expression();
}
}
setState(164);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__27) {
{
{
setState(161);
booleanExpression();
}
}
setState(166);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
break;
case T__16:
enterOuterAlt(_localctx, 9);
{
setState(167);
match(T__16);
setState(168);
format();
setState(170);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__2 || _la==T__3) {
{
setState(169);
_la = _input.LA(1);
if ( !(_la==T__2 || _la==T__3) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(173);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==IDENTIFIER || _la==BACKQUOTED_IDENTIFIER) {
{
setState(172);
expression();
}
}
setState(178);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__27) {
{
{
setState(175);
booleanExpression();
}
}
setState(180);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(183);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__4) {
{
setState(181);
match(T__4);
setState(182);
db();
}
}
}
break;
case T__17:
case T__18:
case T__19:
enterOuterAlt(_localctx, 10);
{
setState(185);
_la = _input.LA(1);
if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__17) | (1L << T__18) | (1L << T__19))) != 0)) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
setState(186);
tableName();
setState(187);
match(T__4);
setState(188);
format();
setState(189);
match(T__1);
setState(190);
path();
setState(192);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__2 || _la==T__3) {
{
setState(191);
_la = _input.LA(1);
if ( !(_la==T__2 || _la==T__3) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(195);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==IDENTIFIER || _la==BACKQUOTED_IDENTIFIER) {
{
setState(194);
expression();
}
}
setState(200);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__27) {
{
{
setState(197);
booleanExpression();
}
}
setState(202);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(206);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__4) {
{
{
setState(203);
asTableName();
}
}
setState(208);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
break;
case T__20:
enterOuterAlt(_localctx, 11);
{
setState(209);
match(T__20);
setState(210);
format();
setState(211);
match(T__1);
setState(212);
path();
setState(213);
match(T__4);
setState(214);
functionName();
setState(216);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__2 || _la==T__3) {
{
setState(215);
_la = _input.LA(1);
if ( !(_la==T__2 || _la==T__3) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(219);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==IDENTIFIER || _la==BACKQUOTED_IDENTIFIER) {
{
setState(218);
expression();
}
}
setState(224);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__27) {
{
{
setState(221);
booleanExpression();
}
}
setState(226);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
break;
case T__21:
enterOuterAlt(_localctx, 12);
{
setState(227);
match(T__21);
setState(228);
format();
setState(229);
match(T__1);
setState(230);
path();
setState(232);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__2 || _la==T__3) {
{
setState(231);
_la = _input.LA(1);
if ( !(_la==T__2 || _la==T__3) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(235);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==IDENTIFIER || _la==BACKQUOTED_IDENTIFIER) {
{
setState(234);
expression();
}
}
setState(240);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__27) {
{
{
setState(237);
booleanExpression();
}
}
setState(242);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
break;
case T__22:
enterOuterAlt(_localctx, 13);
{
setState(243);
match(T__22);
setState(244);
format();
setState(245);
match(T__1);
setState(246);
path();
setState(248);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==T__2 || _la==T__3) {
{
setState(247);
_la = _input.LA(1);
if ( !(_la==T__2 || _la==T__3) ) {
_errHandler.recoverInline(this);
}
else {
if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
_errHandler.reportMatch(this);
consume();
}
}
}
setState(251);
_errHandler.sync(this);
_la = _input.LA(1);
if (_la==IDENTIFIER || _la==BACKQUOTED_IDENTIFIER) {
{
setState(250);
expression();
}
}
setState(256);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__27) {
{
{
setState(253);
booleanExpression();
}
}
setState(258);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
break;
case T__28:
enterOuterAlt(_localctx, 14);
{
setState(259);
command();
setState(264);
_errHandler.sync(this);
_la = _input.LA(1);
while ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << STRING) | (1L << BLOCK_STRING) | (1L << IDENTIFIER) | (1L << BACKQUOTED_IDENTIFIER))) != 0)) {
{
setState(262);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,37,_ctx) ) {
case 1:
{
setState(260);
setValue();
}
break;
case 2:
{
setState(261);
setKey();
}
break;
}
}
setState(266);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
break;
case SIMPLE_COMMENT:
enterOuterAlt(_localctx, 15);
{
setState(267);
match(SIMPLE_COMMENT);
}
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 static class OverwriteContext extends ParserRuleContext {
public OverwriteContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_overwrite; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterOverwrite(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitOverwrite(this);
}
}
public final OverwriteContext overwrite() throws RecognitionException {
OverwriteContext _localctx = new OverwriteContext(_ctx, getState());
enterRule(_localctx, 4, RULE_overwrite);
try {
enterOuterAlt(_localctx, 1);
{
setState(270);
match(T__23);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class AppendContext extends ParserRuleContext {
public AppendContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_append; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterAppend(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitAppend(this);
}
}
public final AppendContext append() throws RecognitionException {
AppendContext _localctx = new AppendContext(_ctx, getState());
enterRule(_localctx, 6, RULE_append);
try {
enterOuterAlt(_localctx, 1);
{
setState(272);
match(T__24);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class ErrorIfExistsContext extends ParserRuleContext {
public ErrorIfExistsContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_errorIfExists; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterErrorIfExists(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitErrorIfExists(this);
}
}
public final ErrorIfExistsContext errorIfExists() throws RecognitionException {
ErrorIfExistsContext _localctx = new ErrorIfExistsContext(_ctx, getState());
enterRule(_localctx, 8, RULE_errorIfExists);
try {
enterOuterAlt(_localctx, 1);
{
setState(274);
match(T__25);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class IgnoreContext extends ParserRuleContext {
public IgnoreContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_ignore; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterIgnore(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitIgnore(this);
}
}
public final IgnoreContext ignore() throws RecognitionException {
IgnoreContext _localctx = new IgnoreContext(_ctx, getState());
enterRule(_localctx, 10, RULE_ignore);
try {
enterOuterAlt(_localctx, 1);
{
setState(276);
match(T__26);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class BooleanExpressionContext extends ParserRuleContext {
public ExpressionContext expression() {
return getRuleContext(ExpressionContext.class,0);
}
public BooleanExpressionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_booleanExpression; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterBooleanExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitBooleanExpression(this);
}
}
public final BooleanExpressionContext booleanExpression() throws RecognitionException {
BooleanExpressionContext _localctx = new BooleanExpressionContext(_ctx, getState());
enterRule(_localctx, 12, RULE_booleanExpression);
try {
enterOuterAlt(_localctx, 1);
{
setState(278);
match(T__27);
setState(279);
expression();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class ExpressionContext extends ParserRuleContext {
public QualifiedNameContext qualifiedName() {
return getRuleContext(QualifiedNameContext.class,0);
}
public TerminalNode STRING() { return getToken(DSLSQLParser.STRING, 0); }
public TerminalNode BLOCK_STRING() { return getToken(DSLSQLParser.BLOCK_STRING, 0); }
public ExpressionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_expression; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterExpression(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitExpression(this);
}
}
public final ExpressionContext expression() throws RecognitionException {
ExpressionContext _localctx = new ExpressionContext(_ctx, getState());
enterRule(_localctx, 14, RULE_expression);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(281);
qualifiedName();
setState(282);
match(T__15);
setState(283);
_la = _input.LA(1);
if ( !(_la==STRING || _la==BLOCK_STRING) ) {
_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;
}
public static class EnderContext extends ParserRuleContext {
public EnderContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_ender; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterEnder(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitEnder(this);
}
}
public final EnderContext ender() throws RecognitionException {
EnderContext _localctx = new EnderContext(_ctx, getState());
enterRule(_localctx, 16, RULE_ender);
try {
enterOuterAlt(_localctx, 1);
{
setState(285);
match(T__9);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FormatContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public FormatContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_format; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterFormat(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitFormat(this);
}
}
public final FormatContext format() throws RecognitionException {
FormatContext _localctx = new FormatContext(_ctx, getState());
enterRule(_localctx, 18, RULE_format);
try {
enterOuterAlt(_localctx, 1);
{
setState(287);
identifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class PathContext extends ParserRuleContext {
public QuotedIdentifierContext quotedIdentifier() {
return getRuleContext(QuotedIdentifierContext.class,0);
}
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public PathContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_path; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterPath(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitPath(this);
}
}
public final PathContext path() throws RecognitionException {
PathContext _localctx = new PathContext(_ctx, getState());
enterRule(_localctx, 20, RULE_path);
try {
setState(291);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,40,_ctx) ) {
case 1:
enterOuterAlt(_localctx, 1);
{
setState(289);
quotedIdentifier();
}
break;
case 2:
enterOuterAlt(_localctx, 2);
{
setState(290);
identifier();
}
break;
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SetValueContext extends ParserRuleContext {
public QualifiedNameContext qualifiedName() {
return getRuleContext(QualifiedNameContext.class,0);
}
public QuotedIdentifierContext quotedIdentifier() {
return getRuleContext(QuotedIdentifierContext.class,0);
}
public TerminalNode STRING() { return getToken(DSLSQLParser.STRING, 0); }
public TerminalNode BLOCK_STRING() { return getToken(DSLSQLParser.BLOCK_STRING, 0); }
public SetValueContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_setValue; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterSetValue(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitSetValue(this);
}
}
public final SetValueContext setValue() throws RecognitionException {
SetValueContext _localctx = new SetValueContext(_ctx, getState());
enterRule(_localctx, 22, RULE_setValue);
try {
setState(297);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,41,_ctx) ) {
case 1:
enterOuterAlt(_localctx, 1);
{
setState(293);
qualifiedName();
}
break;
case 2:
enterOuterAlt(_localctx, 2);
{
setState(294);
quotedIdentifier();
}
break;
case 3:
enterOuterAlt(_localctx, 3);
{
setState(295);
match(STRING);
}
break;
case 4:
enterOuterAlt(_localctx, 4);
{
setState(296);
match(BLOCK_STRING);
}
break;
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SetKeyContext extends ParserRuleContext {
public QualifiedNameContext qualifiedName() {
return getRuleContext(QualifiedNameContext.class,0);
}
public SetKeyContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_setKey; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterSetKey(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitSetKey(this);
}
}
public final SetKeyContext setKey() throws RecognitionException {
SetKeyContext _localctx = new SetKeyContext(_ctx, getState());
enterRule(_localctx, 24, RULE_setKey);
try {
enterOuterAlt(_localctx, 1);
{
setState(299);
qualifiedName();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class CommandContext extends ParserRuleContext {
public QualifiedNameContext qualifiedName() {
return getRuleContext(QualifiedNameContext.class,0);
}
public CommandContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_command; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterCommand(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitCommand(this);
}
}
public final CommandContext command() throws RecognitionException {
CommandContext _localctx = new CommandContext(_ctx, getState());
enterRule(_localctx, 26, RULE_command);
try {
enterOuterAlt(_localctx, 1);
{
setState(301);
match(T__28);
setState(302);
qualifiedName();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class DbContext extends ParserRuleContext {
public QualifiedNameContext qualifiedName() {
return getRuleContext(QualifiedNameContext.class,0);
}
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public DbContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_db; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterDb(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitDb(this);
}
}
public final DbContext db() throws RecognitionException {
DbContext _localctx = new DbContext(_ctx, getState());
enterRule(_localctx, 28, RULE_db);
try {
setState(306);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,42,_ctx) ) {
case 1:
enterOuterAlt(_localctx, 1);
{
setState(304);
qualifiedName();
}
break;
case 2:
enterOuterAlt(_localctx, 2);
{
setState(305);
identifier();
}
break;
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class AsTableNameContext extends ParserRuleContext {
public TableNameContext tableName() {
return getRuleContext(TableNameContext.class,0);
}
public AsTableNameContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_asTableName; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterAsTableName(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitAsTableName(this);
}
}
public final AsTableNameContext asTableName() throws RecognitionException {
AsTableNameContext _localctx = new AsTableNameContext(_ctx, getState());
enterRule(_localctx, 30, RULE_asTableName);
try {
enterOuterAlt(_localctx, 1);
{
setState(308);
match(T__4);
setState(309);
tableName();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class TableNameContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public TableNameContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_tableName; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterTableName(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitTableName(this);
}
}
public final TableNameContext tableName() throws RecognitionException {
TableNameContext _localctx = new TableNameContext(_ctx, getState());
enterRule(_localctx, 32, RULE_tableName);
try {
enterOuterAlt(_localctx, 1);
{
setState(311);
identifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FunctionNameContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public FunctionNameContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_functionName; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterFunctionName(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitFunctionName(this);
}
}
public final FunctionNameContext functionName() throws RecognitionException {
FunctionNameContext _localctx = new FunctionNameContext(_ctx, getState());
enterRule(_localctx, 34, RULE_functionName);
try {
enterOuterAlt(_localctx, 1);
{
setState(313);
identifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class ColGroupContext extends ParserRuleContext {
public ColContext col() {
return getRuleContext(ColContext.class,0);
}
public ColGroupContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_colGroup; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterColGroup(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitColGroup(this);
}
}
public final ColGroupContext colGroup() throws RecognitionException {
ColGroupContext _localctx = new ColGroupContext(_ctx, getState());
enterRule(_localctx, 36, RULE_colGroup);
try {
enterOuterAlt(_localctx, 1);
{
setState(315);
match(T__29);
setState(316);
col();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class ColContext extends ParserRuleContext {
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public ColContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_col; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterCol(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitCol(this);
}
}
public final ColContext col() throws RecognitionException {
ColContext _localctx = new ColContext(_ctx, getState());
enterRule(_localctx, 38, RULE_col);
try {
enterOuterAlt(_localctx, 1);
{
setState(318);
identifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class QualifiedNameContext extends ParserRuleContext {
public List identifier() {
return getRuleContexts(IdentifierContext.class);
}
public IdentifierContext identifier(int i) {
return getRuleContext(IdentifierContext.class,i);
}
public QualifiedNameContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_qualifiedName; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterQualifiedName(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitQualifiedName(this);
}
}
public final QualifiedNameContext qualifiedName() throws RecognitionException {
QualifiedNameContext _localctx = new QualifiedNameContext(_ctx, getState());
enterRule(_localctx, 40, RULE_qualifiedName);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(320);
identifier();
setState(325);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__1) {
{
{
setState(321);
match(T__1);
setState(322);
identifier();
}
}
setState(327);
_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;
}
public static class IdentifierContext extends ParserRuleContext {
public StrictIdentifierContext strictIdentifier() {
return getRuleContext(StrictIdentifierContext.class,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 DSLSQLListener ) ((DSLSQLListener)listener).enterIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitIdentifier(this);
}
}
public final IdentifierContext identifier() throws RecognitionException {
IdentifierContext _localctx = new IdentifierContext(_ctx, getState());
enterRule(_localctx, 42, RULE_identifier);
try {
enterOuterAlt(_localctx, 1);
{
setState(328);
strictIdentifier();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class StrictIdentifierContext extends ParserRuleContext {
public TerminalNode IDENTIFIER() { return getToken(DSLSQLParser.IDENTIFIER, 0); }
public QuotedIdentifierContext quotedIdentifier() {
return getRuleContext(QuotedIdentifierContext.class,0);
}
public StrictIdentifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_strictIdentifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterStrictIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitStrictIdentifier(this);
}
}
public final StrictIdentifierContext strictIdentifier() throws RecognitionException {
StrictIdentifierContext _localctx = new StrictIdentifierContext(_ctx, getState());
enterRule(_localctx, 44, RULE_strictIdentifier);
try {
setState(332);
_errHandler.sync(this);
switch (_input.LA(1)) {
case IDENTIFIER:
enterOuterAlt(_localctx, 1);
{
setState(330);
match(IDENTIFIER);
}
break;
case BACKQUOTED_IDENTIFIER:
enterOuterAlt(_localctx, 2);
{
setState(331);
quotedIdentifier();
}
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 static class QuotedIdentifierContext extends ParserRuleContext {
public TerminalNode BACKQUOTED_IDENTIFIER() { return getToken(DSLSQLParser.BACKQUOTED_IDENTIFIER, 0); }
public QuotedIdentifierContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_quotedIdentifier; }
@Override
public void enterRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).enterQuotedIdentifier(this);
}
@Override
public void exitRule(ParseTreeListener listener) {
if ( listener instanceof DSLSQLListener ) ((DSLSQLListener)listener).exitQuotedIdentifier(this);
}
}
public final QuotedIdentifierContext quotedIdentifier() throws RecognitionException {
QuotedIdentifierContext _localctx = new QuotedIdentifierContext(_ctx, getState());
enterRule(_localctx, 46, RULE_quotedIdentifier);
try {
enterOuterAlt(_localctx, 1);
{
setState(334);
match(BACKQUOTED_IDENTIFIER);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static final String _serializedATN =
"\3\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964\3)\u0153\4\2\t\2\4"+
"\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4\13\t"+
"\13\4\f\t\f\4\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t\21\4\22\t\22"+
"\4\23\t\23\4\24\t\24\4\25\t\25\4\26\t\26\4\27\t\27\4\30\t\30\4\31\t\31"+
"\3\2\3\2\3\2\7\2\66\n\2\f\2\16\29\13\2\3\3\3\3\3\3\3\3\3\3\5\3@\n\3\3"+
"\3\5\3C\n\3\3\3\7\3F\n\3\f\3\16\3I\13\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3"+
"\3\7\3S\n\3\f\3\16\3V\13\3\3\3\3\3\3\3\3\3\3\3\3\3\5\3^\n\3\3\3\5\3a\n"+
"\3\3\3\7\3d\n\3\f\3\16\3g\13\3\3\3\3\3\5\3k\n\3\3\3\7\3n\n\3\f\3\16\3"+
"q\13\3\5\3s\n\3\3\3\3\3\7\3w\n\3\f\3\16\3z\13\3\3\3\3\3\3\3\3\3\7\3\u0080"+
"\n\3\f\3\16\3\u0083\13\3\3\3\3\3\7\3\u0087\n\3\f\3\16\3\u008a\13\3\3\3"+
"\3\3\7\3\u008e\n\3\f\3\16\3\u0091\13\3\3\3\3\3\7\3\u0095\n\3\f\3\16\3"+
"\u0098\13\3\3\3\3\3\3\3\3\3\3\3\5\3\u009f\n\3\3\3\5\3\u00a2\n\3\3\3\7"+
"\3\u00a5\n\3\f\3\16\3\u00a8\13\3\3\3\3\3\3\3\5\3\u00ad\n\3\3\3\5\3\u00b0"+
"\n\3\3\3\7\3\u00b3\n\3\f\3\16\3\u00b6\13\3\3\3\3\3\5\3\u00ba\n\3\3\3\3"+
"\3\3\3\3\3\3\3\3\3\3\3\5\3\u00c3\n\3\3\3\5\3\u00c6\n\3\3\3\7\3\u00c9\n"+
"\3\f\3\16\3\u00cc\13\3\3\3\7\3\u00cf\n\3\f\3\16\3\u00d2\13\3\3\3\3\3\3"+
"\3\3\3\3\3\3\3\3\3\5\3\u00db\n\3\3\3\5\3\u00de\n\3\3\3\7\3\u00e1\n\3\f"+
"\3\16\3\u00e4\13\3\3\3\3\3\3\3\3\3\3\3\5\3\u00eb\n\3\3\3\5\3\u00ee\n\3"+
"\3\3\7\3\u00f1\n\3\f\3\16\3\u00f4\13\3\3\3\3\3\3\3\3\3\3\3\5\3\u00fb\n"+
"\3\3\3\5\3\u00fe\n\3\3\3\7\3\u0101\n\3\f\3\16\3\u0104\13\3\3\3\3\3\3\3"+
"\7\3\u0109\n\3\f\3\16\3\u010c\13\3\3\3\5\3\u010f\n\3\3\4\3\4\3\5\3\5\3"+
"\6\3\6\3\7\3\7\3\b\3\b\3\b\3\t\3\t\3\t\3\t\3\n\3\n\3\13\3\13\3\f\3\f\5"+
"\f\u0126\n\f\3\r\3\r\3\r\3\r\5\r\u012c\n\r\3\16\3\16\3\17\3\17\3\17\3"+
"\20\3\20\5\20\u0135\n\20\3\21\3\21\3\21\3\22\3\22\3\23\3\23\3\24\3\24"+
"\3\24\3\25\3\25\3\26\3\26\3\26\7\26\u0146\n\26\f\26\16\26\u0149\13\26"+
"\3\27\3\27\3\30\3\30\5\30\u014f\n\30\3\31\3\31\3\31\2\2\32\2\4\6\b\n\f"+
"\16\20\22\24\26\30\32\34\36 \"$&(*,.\60\2\7\3\2\5\6\3\2\t\n\3\2\f\f\3"+
"\2\24\26\3\2!\"\2\u0178\2\67\3\2\2\2\4\u010e\3\2\2\2\6\u0110\3\2\2\2\b"+
"\u0112\3\2\2\2\n\u0114\3\2\2\2\f\u0116\3\2\2\2\16\u0118\3\2\2\2\20\u011b"+
"\3\2\2\2\22\u011f\3\2\2\2\24\u0121\3\2\2\2\26\u0125\3\2\2\2\30\u012b\3"+
"\2\2\2\32\u012d\3\2\2\2\34\u012f\3\2\2\2\36\u0134\3\2\2\2 \u0136\3\2\2"+
"\2\"\u0139\3\2\2\2$\u013b\3\2\2\2&\u013d\3\2\2\2(\u0140\3\2\2\2*\u0142"+
"\3\2\2\2,\u014a\3\2\2\2.\u014e\3\2\2\2\60\u0150\3\2\2\2\62\63\5\4\3\2"+
"\63\64\5\22\n\2\64\66\3\2\2\2\65\62\3\2\2\2\669\3\2\2\2\67\65\3\2\2\2"+
"\678\3\2\2\28\3\3\2\2\29\67\3\2\2\2:;\7\3\2\2;<\5\24\13\2<=\7\4\2\2=?"+
"\5\26\f\2>@\t\2\2\2?>\3\2\2\2?@\3\2\2\2@B\3\2\2\2AC\5\20\t\2BA\3\2\2\2"+
"BC\3\2\2\2CG\3\2\2\2DF\5\16\b\2ED\3\2\2\2FI\3\2\2\2GE\3\2\2\2GH\3\2\2"+
"\2HJ\3\2\2\2IG\3\2\2\2JK\7\7\2\2KL\5\"\22\2L\u010f\3\2\2\2MT\7\b\2\2N"+
"S\5\6\4\2OS\5\b\5\2PS\5\n\6\2QS\5\f\7\2RN\3\2\2\2RO\3\2\2\2RP\3\2\2\2"+
"RQ\3\2\2\2SV\3\2\2\2TR\3\2\2\2TU\3\2\2\2UW\3\2\2\2VT\3\2\2\2WX\5\"\22"+
"\2XY\7\7\2\2YZ\5\24\13\2Z[\7\4\2\2[]\5\26\f\2\\^\t\2\2\2]\\\3\2\2\2]^"+
"\3\2\2\2^`\3\2\2\2_a\5\20\t\2`_\3\2\2\2`a\3\2\2\2ae\3\2\2\2bd\5\16\b\2"+
"cb\3\2\2\2dg\3\2\2\2ec\3\2\2\2ef\3\2\2\2fr\3\2\2\2ge\3\2\2\2hj\t\3\2\2"+
"ik\5(\25\2ji\3\2\2\2jk\3\2\2\2ko\3\2\2\2ln\5&\24\2ml\3\2\2\2nq\3\2\2\2"+
"om\3\2\2\2op\3\2\2\2ps\3\2\2\2qo\3\2\2\2rh\3\2\2\2rs\3\2\2\2s\u010f\3"+
"\2\2\2tx\7\13\2\2uw\n\4\2\2vu\3\2\2\2wz\3\2\2\2xv\3\2\2\2xy\3\2\2\2y{"+
"\3\2\2\2zx\3\2\2\2{|\7\7\2\2|\u010f\5\"\22\2}\u0081\7\r\2\2~\u0080\n\4"+
"\2\2\177~\3\2\2\2\u0080\u0083\3\2\2\2\u0081\177\3\2\2\2\u0081\u0082\3"+
"\2\2\2\u0082\u010f\3\2\2\2\u0083\u0081\3\2\2\2\u0084\u0088\7\16\2\2\u0085"+
"\u0087\n\4\2\2\u0086\u0085\3\2\2\2\u0087\u008a\3\2\2\2\u0088\u0086\3\2"+
"\2\2\u0088\u0089\3\2\2\2\u0089\u010f\3\2\2\2\u008a\u0088\3\2\2\2\u008b"+
"\u008f\7\17\2\2\u008c\u008e\n\4\2\2\u008d\u008c\3\2\2\2\u008e\u0091\3"+
"\2\2\2\u008f\u008d\3\2\2\2\u008f\u0090\3\2\2\2\u0090\u010f\3\2\2\2\u0091"+
"\u008f\3\2\2\2\u0092\u0096\7\20\2\2\u0093\u0095\n\4\2\2\u0094\u0093\3"+
"\2\2\2\u0095\u0098\3\2\2\2\u0096\u0094\3\2\2\2\u0096\u0097\3\2\2\2\u0097"+
"\u010f\3\2\2\2\u0098\u0096\3\2\2\2\u0099\u009a\7\21\2\2\u009a\u009b\5"+
"\32\16\2\u009b\u009c\7\22\2\2\u009c\u009e\5\30\r\2\u009d\u009f\t\2\2\2"+
"\u009e\u009d\3\2\2\2\u009e\u009f\3\2\2\2\u009f\u00a1\3\2\2\2\u00a0\u00a2"+
"\5\20\t\2\u00a1\u00a0\3\2\2\2\u00a1\u00a2\3\2\2\2\u00a2\u00a6\3\2\2\2"+
"\u00a3\u00a5\5\16\b\2\u00a4\u00a3\3\2\2\2\u00a5\u00a8\3\2\2\2\u00a6\u00a4"+
"\3\2\2\2\u00a6\u00a7\3\2\2\2\u00a7\u010f\3\2\2\2\u00a8\u00a6\3\2\2\2\u00a9"+
"\u00aa\7\23\2\2\u00aa\u00ac\5\24\13\2\u00ab\u00ad\t\2\2\2\u00ac\u00ab"+
"\3\2\2\2\u00ac\u00ad\3\2\2\2\u00ad\u00af\3\2\2\2\u00ae\u00b0\5\20\t\2"+
"\u00af\u00ae\3\2\2\2\u00af\u00b0\3\2\2\2\u00b0\u00b4\3\2\2\2\u00b1\u00b3"+
"\5\16\b\2\u00b2\u00b1\3\2\2\2\u00b3\u00b6\3\2\2\2\u00b4\u00b2\3\2\2\2"+
"\u00b4\u00b5\3\2\2\2\u00b5\u00b9\3\2\2\2\u00b6\u00b4\3\2\2\2\u00b7\u00b8"+
"\7\7\2\2\u00b8\u00ba\5\36\20\2\u00b9\u00b7\3\2\2\2\u00b9\u00ba\3\2\2\2"+
"\u00ba\u010f\3\2\2\2\u00bb\u00bc\t\5\2\2\u00bc\u00bd\5\"\22\2\u00bd\u00be"+
"\7\7\2\2\u00be\u00bf\5\24\13\2\u00bf\u00c0\7\4\2\2\u00c0\u00c2\5\26\f"+
"\2\u00c1\u00c3\t\2\2\2\u00c2\u00c1\3\2\2\2\u00c2\u00c3\3\2\2\2\u00c3\u00c5"+
"\3\2\2\2\u00c4\u00c6\5\20\t\2\u00c5\u00c4\3\2\2\2\u00c5\u00c6\3\2\2\2"+
"\u00c6\u00ca\3\2\2\2\u00c7\u00c9\5\16\b\2\u00c8\u00c7\3\2\2\2\u00c9\u00cc"+
"\3\2\2\2\u00ca\u00c8\3\2\2\2\u00ca\u00cb\3\2\2\2\u00cb\u00d0\3\2\2\2\u00cc"+
"\u00ca\3\2\2\2\u00cd\u00cf\5 \21\2\u00ce\u00cd\3\2\2\2\u00cf\u00d2\3\2"+
"\2\2\u00d0\u00ce\3\2\2\2\u00d0\u00d1\3\2\2\2\u00d1\u010f\3\2\2\2\u00d2"+
"\u00d0\3\2\2\2\u00d3\u00d4\7\27\2\2\u00d4\u00d5\5\24\13\2\u00d5\u00d6"+
"\7\4\2\2\u00d6\u00d7\5\26\f\2\u00d7\u00d8\7\7\2\2\u00d8\u00da\5$\23\2"+
"\u00d9\u00db\t\2\2\2\u00da\u00d9\3\2\2\2\u00da\u00db\3\2\2\2\u00db\u00dd"+
"\3\2\2\2\u00dc\u00de\5\20\t\2\u00dd\u00dc\3\2\2\2\u00dd\u00de\3\2\2\2"+
"\u00de\u00e2\3\2\2\2\u00df\u00e1\5\16\b\2\u00e0\u00df\3\2\2\2\u00e1\u00e4"+
"\3\2\2\2\u00e2\u00e0\3\2\2\2\u00e2\u00e3\3\2\2\2\u00e3\u010f\3\2\2\2\u00e4"+
"\u00e2\3\2\2\2\u00e5\u00e6\7\30\2\2\u00e6\u00e7\5\24\13\2\u00e7\u00e8"+
"\7\4\2\2\u00e8\u00ea\5\26\f\2\u00e9\u00eb\t\2\2\2\u00ea\u00e9\3\2\2\2"+
"\u00ea\u00eb\3\2\2\2\u00eb\u00ed\3\2\2\2\u00ec\u00ee\5\20\t\2\u00ed\u00ec"+
"\3\2\2\2\u00ed\u00ee\3\2\2\2\u00ee\u00f2\3\2\2\2\u00ef\u00f1\5\16\b\2"+
"\u00f0\u00ef\3\2\2\2\u00f1\u00f4\3\2\2\2\u00f2\u00f0\3\2\2\2\u00f2\u00f3"+
"\3\2\2\2\u00f3\u010f\3\2\2\2\u00f4\u00f2\3\2\2\2\u00f5\u00f6\7\31\2\2"+
"\u00f6\u00f7\5\24\13\2\u00f7\u00f8\7\4\2\2\u00f8\u00fa\5\26\f\2\u00f9"+
"\u00fb\t\2\2\2\u00fa\u00f9\3\2\2\2\u00fa\u00fb\3\2\2\2\u00fb\u00fd\3\2"+
"\2\2\u00fc\u00fe\5\20\t\2\u00fd\u00fc\3\2\2\2\u00fd\u00fe\3\2\2\2\u00fe"+
"\u0102\3\2\2\2\u00ff\u0101\5\16\b\2\u0100\u00ff\3\2\2\2\u0101\u0104\3"+
"\2\2\2\u0102\u0100\3\2\2\2\u0102\u0103\3\2\2\2\u0103\u010f\3\2\2\2\u0104"+
"\u0102\3\2\2\2\u0105\u010a\5\34\17\2\u0106\u0109\5\30\r\2\u0107\u0109"+
"\5\32\16\2\u0108\u0106\3\2\2\2\u0108\u0107\3\2\2\2\u0109\u010c\3\2\2\2"+
"\u010a\u0108\3\2\2\2\u010a\u010b\3\2\2\2\u010b\u010f\3\2\2\2\u010c\u010a"+
"\3\2\2\2\u010d\u010f\7%\2\2\u010e:\3\2\2\2\u010eM\3\2\2\2\u010et\3\2\2"+
"\2\u010e}\3\2\2\2\u010e\u0084\3\2\2\2\u010e\u008b\3\2\2\2\u010e\u0092"+
"\3\2\2\2\u010e\u0099\3\2\2\2\u010e\u00a9\3\2\2\2\u010e\u00bb\3\2\2\2\u010e"+
"\u00d3\3\2\2\2\u010e\u00e5\3\2\2\2\u010e\u00f5\3\2\2\2\u010e\u0105\3\2"+
"\2\2\u010e\u010d\3\2\2\2\u010f\5\3\2\2\2\u0110\u0111\7\32\2\2\u0111\7"+
"\3\2\2\2\u0112\u0113\7\33\2\2\u0113\t\3\2\2\2\u0114\u0115\7\34\2\2\u0115"+
"\13\3\2\2\2\u0116\u0117\7\35\2\2\u0117\r\3\2\2\2\u0118\u0119\7\36\2\2"+
"\u0119\u011a\5\20\t\2\u011a\17\3\2\2\2\u011b\u011c\5*\26\2\u011c\u011d"+
"\7\22\2\2\u011d\u011e\t\6\2\2\u011e\21\3\2\2\2\u011f\u0120\7\f\2\2\u0120"+
"\23\3\2\2\2\u0121\u0122\5,\27\2\u0122\25\3\2\2\2\u0123\u0126\5\60\31\2"+
"\u0124\u0126\5,\27\2\u0125\u0123\3\2\2\2\u0125\u0124\3\2\2\2\u0126\27"+
"\3\2\2\2\u0127\u012c\5*\26\2\u0128\u012c\5\60\31\2\u0129\u012c\7!\2\2"+
"\u012a\u012c\7\"\2\2\u012b\u0127\3\2\2\2\u012b\u0128\3\2\2\2\u012b\u0129"+
"\3\2\2\2\u012b\u012a\3\2\2\2\u012c\31\3\2\2\2\u012d\u012e\5*\26\2\u012e"+
"\33\3\2\2\2\u012f\u0130\7\37\2\2\u0130\u0131\5*\26\2\u0131\35\3\2\2\2"+
"\u0132\u0135\5*\26\2\u0133\u0135\5,\27\2\u0134\u0132\3\2\2\2\u0134\u0133"+
"\3\2\2\2\u0135\37\3\2\2\2\u0136\u0137\7\7\2\2\u0137\u0138\5\"\22\2\u0138"+
"!\3\2\2\2\u0139\u013a\5,\27\2\u013a#\3\2\2\2\u013b\u013c\5,\27\2\u013c"+
"%\3\2\2\2\u013d\u013e\7 \2\2\u013e\u013f\5(\25\2\u013f\'\3\2\2\2\u0140"+
"\u0141\5,\27\2\u0141)\3\2\2\2\u0142\u0147\5,\27\2\u0143\u0144\7\4\2\2"+
"\u0144\u0146\5,\27\2\u0145\u0143\3\2\2\2\u0146\u0149\3\2\2\2\u0147\u0145"+
"\3\2\2\2\u0147\u0148\3\2\2\2\u0148+\3\2\2\2\u0149\u0147\3\2\2\2\u014a"+
"\u014b\5.\30\2\u014b-\3\2\2\2\u014c\u014f\7#\2\2\u014d\u014f\5\60\31\2"+
"\u014e\u014c\3\2\2\2\u014e\u014d\3\2\2\2\u014f/\3\2\2\2\u0150\u0151\7"+
"$\2\2\u0151\61\3\2\2\2/\67?BGRT]`ejorx\u0081\u0088\u008f\u0096\u009e\u00a1"+
"\u00a6\u00ac\u00af\u00b4\u00b9\u00c2\u00c5\u00ca\u00d0\u00da\u00dd\u00e2"+
"\u00ea\u00ed\u00f2\u00fa\u00fd\u0102\u0108\u010a\u010e\u0125\u012b\u0134"+
"\u0147\u014e";
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);
}
}
}