in x-pack/plugin/sql/src/main/java/org/elasticsearch/xpack/sql/parser/SqlBaseParser.java [6972:7052]
public final FunctionNameContext functionName() throws RecognitionException {
FunctionNameContext _localctx = new FunctionNameContext(_ctx, getState());
enterRule(_localctx, 88, RULE_functionName);
try {
setState(767);
_errHandler.sync(this);
switch (_input.LA(1)) {
case LEFT:
enterOuterAlt(_localctx, 1); {
setState(764);
match(LEFT);
}
break;
case RIGHT:
enterOuterAlt(_localctx, 2); {
setState(765);
match(RIGHT);
}
break;
case ANALYZE:
case ANALYZED:
case CATALOGS:
case COLUMNS:
case CURRENT_DATE:
case CURRENT_TIME:
case CURRENT_TIMESTAMP:
case DAY:
case DEBUG:
case EXECUTABLE:
case EXPLAIN:
case FIRST:
case FORMAT:
case FULL:
case FUNCTIONS:
case GRAPHVIZ:
case HOUR:
case INTERVAL:
case LAST:
case LIMIT:
case MAPPED:
case MINUTE:
case MONTH:
case OPTIMIZED:
case PARSED:
case PHYSICAL:
case PIVOT:
case PLAN:
case RLIKE:
case QUERY:
case SCHEMAS:
case SECOND:
case SHOW:
case SYS:
case TABLES:
case TEXT:
case TOP:
case TYPE:
case TYPES:
case VERIFY:
case YEAR:
case IDENTIFIER:
case DIGIT_IDENTIFIER:
case QUOTED_IDENTIFIER:
case BACKQUOTED_IDENTIFIER:
enterOuterAlt(_localctx, 3); {
setState(766);
identifier();
}
break;
default:
throw new NoViableAltException(this);
}
} catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
} finally {
exitRule();
}
return _localctx;
}