Class SqlParserImpl
- java.lang.Object
-
- org.apache.calcite.sql.parser.SqlAbstractParserImpl
-
- org.apache.pinot.sql.parsers.parser.SqlParserImpl
-
- All Implemented Interfaces:
SqlParserImplConstants
public class SqlParserImpl extends org.apache.calcite.sql.parser.SqlAbstractParserImpl implements SqlParserImplConstants
SQL parser, generated from Parser.jj by JavaCC.The public wrapper for this parser is
SqlParser.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.calcite.sql.parser.SqlAbstractParserImpl
org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext, org.apache.calcite.sql.parser.SqlAbstractParserImpl.LexicalState, org.apache.calcite.sql.parser.SqlAbstractParserImpl.Metadata, org.apache.calcite.sql.parser.SqlAbstractParserImpl.MetadataImpl
-
-
Field Summary
Fields Modifier and Type Field Description static org.apache.calcite.sql.parser.SqlParserImplFactoryFACTORYSqlParserImplFactoryimplementation for creating parser.Tokenjj_ntNext token.TokentokenCurrent token.SqlParserImplTokenManagertoken_sourceGenerated Token Manager.-
Fields inherited from class org.apache.calcite.sql.parser.SqlAbstractParserImpl
nDynamicParams, originalSql, warnings
-
Fields inherited from interface org.apache.pinot.sql.parsers.parser.SqlParserImplConstants
A, ABS, ABSENT, ABSOLUTE, ACTION, ADA, ADD, ADMIN, AFTER, ALL, ALLOCATE, ALLOW, ALTER, ALWAYS, AND, ANY, APPLY, APPROX_NUMERIC_LITERAL, ARCHIVE, ARE, ARRAY, ARRAY_AGG, ARRAY_CONCAT_AGG, ARRAY_MAX_CARDINALITY, AS, ASC, ASENSITIVE, ASSERTION, ASSIGNMENT, ASYMMETRIC, AT, ATOMIC, ATTRIBUTE, ATTRIBUTES, AUTHORIZATION, AVG, BACK_QUOTED_IDENTIFIER, BEFORE, BEGIN, BEGIN_FRAME, BEGIN_PARTITION, BEL, BERNOULLI, BETWEEN, BIG_QUERY_BACK_QUOTED_IDENTIFIER, BIG_QUERY_DOUBLE_QUOTED_STRING, BIG_QUERY_QUOTED_STRING, BIGINT, BINARY, BINARY_STRING_LITERAL, BIT, BLOB, BOOLEAN, BOTH, BQHID, BQID, BRACKET_QUOTED_IDENTIFIER, BREADTH, BTID, BY, C, CALL, CALLED, CARDINALITY, CARET, CASCADE, CASCADED, CASE, CAST, CATALOG, CATALOG_NAME, CEIL, CEILING, CENTURY, CHAIN, CHAR, CHAR_LENGTH, CHARACTER, CHARACTER_LENGTH, CHARACTER_SET_CATALOG, CHARACTER_SET_NAME, CHARACTER_SET_SCHEMA, CHARACTERISTICS, CHARACTERS, CHARSETNAME, CHECK, CLASS_ORIGIN, CLASSIFIER, CLOB, CLOSE, COALESCE, COBOL, COLLATE, COLLATION, COLLATION_CATALOG, COLLATION_ID, COLLATION_NAME, COLLATION_SCHEMA, COLLECT, COLON, COLUMN, COLUMN_NAME, COMMA, COMMAND_FUNCTION, COMMAND_FUNCTION_CODE, COMMENT_END, COMMIT, COMMITTED, CONCAT, CONDITION, CONDITION_NUMBER, CONDITIONAL, CONNECT, CONNECTION, CONNECTION_NAME, CONSTRAINT, CONSTRAINT_CATALOG, CONSTRAINT_NAME, CONSTRAINT_SCHEMA, CONSTRAINTS, CONSTRUCTOR, CONTAINS, CONTINUE, CONVERT, CORR, CORRESPONDING, COUNT, COVAR_POP, COVAR_SAMP, CREATE, CROSS, CUBE, CUME_DIST, CURRENT, CURRENT_CATALOG, CURRENT_DATE, CURRENT_DEFAULT_TRANSFORM_GROUP, CURRENT_PATH, CURRENT_ROLE, CURRENT_ROW, CURRENT_SCHEMA, CURRENT_TIME, CURRENT_TIMESTAMP, CURRENT_TRANSFORM_GROUP_FOR_TYPE, CURRENT_USER, CURSOR, CURSOR_NAME, CYCLE, DATA, DATABASE, DATE, DATETIME_INTERVAL_CODE, DATETIME_INTERVAL_PRECISION, DAY, DAYS, DEALLOCATE, DEC, DECADE, DECIMAL, DECIMAL_NUMERIC_LITERAL, DECLARE, DEFAULT, DEFAULT_, DEFAULTS, DEFERRABLE, DEFERRED, DEFINE, DEFINED, DEFINER, DEGREE, DELETE, DENSE_RANK, DEPTH, DEREF, DERIVED, DESC, DESCRIBE, DESCRIPTION, DESCRIPTOR, DETERMINISTIC, DIAGNOSTICS, DIGIT, DISALLOW, DISCONNECT, DISPATCH, DISTINCT, DOLLAR, DOMAIN, DOT, DOT_FORMAT, DOUBLE, DOUBLE_PERIOD, DOW, DOY, DQID, DROP, DYNAMIC, DYNAMIC_FUNCTION, DYNAMIC_FUNCTION_CODE, EACH, ELEMENT, ELSE, EMPTY, ENCODING, END, END_EXEC, END_FRAME, END_PARTITION, EOF, EPOCH, EQ, EQUALS, ERROR, ESCAPE, EVERY, EXCEPT, EXCEPTION, EXCLUDE, EXCLUDING, EXEC, EXECUTE, EXISTS, EXP, EXPLAIN, EXPONENT, EXTEND, EXTERNAL, EXTRACT, FALSE, FETCH, FILE, FILTER, FINAL, FIRST, FIRST_VALUE, FLOAT, FLOOR, FOLLOWING, FOR, FOREIGN, FORMAL_COMMENT, FORMAT, FORTRAN, FOUND, FRAC_SECOND, FRAME_ROW, FREE, FROM, FULL, FUNCTION, FUSION, G, GE, GENERAL, GENERATED, GEOMETRY, GET, GLOBAL, GO, GOTO, GRANT, GRANTED, GROUP, GROUP_CONCAT, GROUPING, GROUPS, GT, HAVING, HEXDIGIT, HIERARCHY, HINT_BEG, HOLD, HOOK, HOP, HOUR, HOURS, HYPHENATED_IDENTIFIER, IDENTIFIER, IDENTITY, IGNORE, ILIKE, IMMEDIATE, IMMEDIATELY, IMPLEMENTATION, IMPORT, IN, IN_FORMAL_COMMENT, IN_MULTI_LINE_COMMENT, INCLUDE, INCLUDING, INCREMENT, INDICATOR, INITIAL, INITIALLY, INNER, INOUT, INPUT, INSENSITIVE, INSERT, INSTANCE, INSTANTIABLE, INT, INTEGER, INTERSECT, INTERSECTION, INTERVAL, INTO, INVOKER, IS, ISODOW, ISOLATION, ISOYEAR, JAVA, JOIN, JSON, JSON_ARRAY, JSON_ARRAYAGG, JSON_EXISTS, JSON_OBJECT, JSON_OBJECTAGG, JSON_QUERY, JSON_VALUE, K, KEY, KEY_MEMBER, KEY_TYPE, LABEL, LAG, LANGUAGE, LARGE, LAST, LAST_VALUE, LATERAL, LBRACE, LBRACE_D, LBRACE_FN, LBRACE_T, LBRACE_TS, LBRACKET, LE, LEAD, LEADING, LEFT, LENGTH, LETTER, LEVEL, LIBRARY, LIKE, LIKE_REGEX, LIMIT, LN, LOCAL, LOCALTIME, LOCALTIMESTAMP, LOCATOR, LOWER, LPAREN, LT, M, MAP, MATCH, MATCH_NUMBER, MATCH_RECOGNIZE, MATCHED, MATCHES, MAX, MAXVALUE, MEASURES, MEMBER, MERGE, MESSAGE_LENGTH, MESSAGE_OCTET_LENGTH, MESSAGE_TEXT, METHOD, MICROSECOND, MILLENNIUM, MILLISECOND, MIN, MINUS, MINUTE, MINUTES, MINVALUE, MOD, MODIFIES, MODULE, MONTH, MONTHS, MORE_, MULTI_LINE_COMMENT, MULTISET, MUMPS, NAME, NAMED_ARGUMENT_ASSIGNMENT, NAMES, NANOSECOND, NATIONAL, NATURAL, NCHAR, NCLOB, NE, NE2, NESTING, NEW, NEXT, NO, NONE, NORMALIZE, NORMALIZED, NOT, NTH_VALUE, NTILE, NULL, NULLABLE, NULLIF, NULLS, NUMBER, NUMERIC, OBJECT, OCCURRENCES_REGEX, OCTET_LENGTH, OCTETS, OF, OFFSET, OLD, OMIT, ON, ONE, ONLY, OPEN, OPTION, OPTIONS, OR, ORDER, ORDERING, ORDINALITY, OTHERS, OUT, OUTER, OUTPUT, OVER, OVERLAPS, OVERLAY, OVERRIDING, PAD, PARAMETER, PARAMETER_MODE, PARAMETER_NAME, PARAMETER_ORDINAL_POSITION, PARAMETER_SPECIFIC_CATALOG, PARAMETER_SPECIFIC_NAME, PARAMETER_SPECIFIC_SCHEMA, PARTIAL, PARTITION, PASCAL, PASSING, PASSTHROUGH, PAST, PATH, PATTERN, PER, PERCENT, PERCENT_RANK, PERCENT_REMAINDER, PERCENTILE_CONT, PERCENTILE_DISC, PERIOD, PERMUTE, PIVOT, PLACING, PLAN, PLI, PLUS, PORTION, POSITION, POSITION_REGEX, POWER, PRECEDES, PRECEDING, PRECISION, PREFIXED_STRING_LITERAL, PREPARE, PRESERVE, PREV, PRIMARY, PRIOR, PRIVILEGES, PROCEDURE, PUBLIC, QUARTER, QUOTE, QUOTED_IDENTIFIER, QUOTED_STRING, RANGE, RANK, RBRACE, RBRACKET, READ, READS, REAL, RECURSIVE, REF, REFERENCES, REFERENCING, REGR_AVGX, REGR_AVGY, REGR_COUNT, REGR_INTERCEPT, REGR_R2, REGR_SLOPE, REGR_SXX, REGR_SXY, REGR_SYY, RELATIVE, RELEASE, REPEATABLE, REPLACE, RESET, RESPECT, RESTART, RESTRICT, RESULT, RETURN, RETURNED_CARDINALITY, RETURNED_LENGTH, RETURNED_OCTET_LENGTH, RETURNED_SQLSTATE, RETURNING, RETURNS, REVOKE, RIGHT, RLIKE, ROLE, ROLLBACK, ROLLUP, ROUTINE, ROUTINE_CATALOG, ROUTINE_NAME, ROUTINE_SCHEMA, ROW, ROW_COUNT, ROW_NUMBER, ROWS, RPAREN, RUNNING, SAVEPOINT, SCALAR, SCALE, SCHEMA, SCHEMA_NAME, SCOPE, SCOPE_CATALOGS, SCOPE_NAME, SCOPE_SCHEMA, SCROLL, SEARCH, SECOND, SECONDS, SECTION, SECURITY, SEEK, SELECT, SELF, SEMICOLON, SENSITIVE, SEPARATOR, SEQUENCE, SERIALIZABLE, SERVER, SERVER_NAME, SESSION, SESSION_USER, SET, SET_MINUS, SETS, SHOW, SIMILAR, SIMPLE, SINGLE_LINE_COMMENT, SIZE, SKIP_, SLASH, SMALLINT, SOME, SOURCE, SPACE, SPECIFIC, SPECIFIC_NAME, SPECIFICTYPE, SQL, SQL_BIGINT, SQL_BINARY, SQL_BIT, SQL_BLOB, SQL_BOOLEAN, SQL_CHAR, SQL_CLOB, SQL_DATE, SQL_DECIMAL, SQL_DOUBLE, SQL_FLOAT, SQL_INTEGER, SQL_INTERVAL_DAY, SQL_INTERVAL_DAY_TO_HOUR, SQL_INTERVAL_DAY_TO_MINUTE, SQL_INTERVAL_DAY_TO_SECOND, SQL_INTERVAL_HOUR, SQL_INTERVAL_HOUR_TO_MINUTE, SQL_INTERVAL_HOUR_TO_SECOND, SQL_INTERVAL_MINUTE, SQL_INTERVAL_MINUTE_TO_SECOND, SQL_INTERVAL_MONTH, SQL_INTERVAL_SECOND, SQL_INTERVAL_YEAR, SQL_INTERVAL_YEAR_TO_MONTH, SQL_LONGVARBINARY, SQL_LONGVARCHAR, SQL_LONGVARNCHAR, SQL_NCHAR, SQL_NCLOB, SQL_NUMERIC, SQL_NVARCHAR, SQL_REAL, SQL_SMALLINT, SQL_TIME, SQL_TIMESTAMP, SQL_TINYINT, SQL_TSI_DAY, SQL_TSI_FRAC_SECOND, SQL_TSI_HOUR, SQL_TSI_MICROSECOND, SQL_TSI_MINUTE, SQL_TSI_MONTH, SQL_TSI_QUARTER, SQL_TSI_SECOND, SQL_TSI_WEEK, SQL_TSI_YEAR, SQL_VARBINARY, SQL_VARCHAR, SQLEXCEPTION, SQLSTATE, SQLWARNING, SQRT, STAR, START, STATE, STATEMENT, STATIC, STDDEV_POP, STDDEV_SAMP, STREAM, STRING_AGG, STRUCTURE, STYLE, SUBCLASS_ORIGIN, SUBMULTISET, SUBSET, SUBSTITUTE, SUBSTRING, SUBSTRING_REGEX, SUCCEEDS, SUM, SYMMETRIC, SYSTEM, SYSTEM_TIME, SYSTEM_USER, TABLE, TABLE_NAME, TABLESAMPLE, TEMPORARY, THEN, TIES, TIME, TIMESTAMP, TIMESTAMPADD, TIMESTAMPDIFF, TIMEZONE_HOUR, TIMEZONE_MINUTE, TINYINT, TO, tokenImage, TOP_LEVEL_COUNT, TRAILING, TRANSACTION, TRANSACTIONS_ACTIVE, TRANSACTIONS_COMMITTED, TRANSACTIONS_ROLLED_BACK, TRANSFORM, TRANSFORMS, TRANSLATE, TRANSLATE_REGEX, TRANSLATION, TREAT, TRIGGER, TRIGGER_CATALOG, TRIGGER_NAME, TRIGGER_SCHEMA, TRIM, TRIM_ARRAY, TRUE, TRUNCATE, TUMBLE, TYPE, UESCAPE, UNBOUNDED, UNCOMMITTED, UNCONDITIONAL, UNDER, UNICODE_QUOTED_ESCAPE_CHAR, UNICODE_QUOTED_IDENTIFIER, UNICODE_STRING_LITERAL, UNION, UNIQUE, UNKNOWN, UNNAMED, UNNEST, UNPIVOT, UNSIGNED_INTEGER_LITERAL, UPDATE, UPPER, UPSERT, USAGE, USER, USER_DEFINED_TYPE_CATALOG, USER_DEFINED_TYPE_CODE, USER_DEFINED_TYPE_NAME, USER_DEFINED_TYPE_SCHEMA, USING, UTF16, UTF32, UTF8, VALUE, VALUE_OF, VALUES, VAR_POP, VAR_SAMP, VARBINARY, VARCHAR, VARYING, VERSION, VERSIONING, VERTICAL_BAR, VIEW, WEEK, WHEN, WHENEVER, WHERE, WHITESPACE, WIDTH_BUCKET, WINDOW, WITH, WITHIN, WITHOUT, WORK, WRAPPER, WRITE, XML, YEAR, YEARS, ZONE
-
-
Constructor Summary
Constructors Constructor Description SqlParserImpl(InputStream stream)Constructor with InputStream.SqlParserImpl(InputStream stream, String encoding)Constructor with InputStream and supplied encodingSqlParserImpl(Reader stream)Constructor.SqlParserImpl(SqlParserImplTokenManager tm)Constructor with generated Token Manager.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.apache.calcite.sql.SqlLiteralAllOrDistinct()voidArg(List list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)voidArg0(List list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)org.apache.calcite.sql.SqlNodeArrayConstructor()Parses an ARRAY constructororg.apache.calcite.sql.SqlNodeAtomicRowExpression()Parses an atomic row expression.org.apache.calcite.sql.SqlBinaryOperatorBinaryMultisetOperator()Parses a binary multiset operator.org.apache.calcite.sql.SqlBinaryOperatorBinaryQueryOperator()Parses a binary query operator like UNION.org.apache.calcite.sql.SqlBinaryOperatorBinaryRowOperator()Parses a binary row operator like AND.org.apache.calcite.sql.SqlNodeBuiltinFunctionCall()Parses a call to a builtin function with special syntax.org.apache.calcite.sql.SqlNodeCaseExpression()org.apache.calcite.sql.SqlTypeNameSpecCharacterTypeName(org.apache.calcite.sql.parser.Span s)Parse character types: char, varchar.org.apache.calcite.sql.SqlCollationCollateClause()Parses a COLLATE clauseorg.apache.calcite.sql.SqlTypeNameSpecCollectionsTypeName(org.apache.calcite.sql.SqlTypeNameSpec elementTypeName)Parse a collection type name, the input element type name may also be a collection type.voidColumnType(List<org.apache.calcite.sql.SqlNode> list)voidCommaSeparatedSqlHints(List<org.apache.calcite.sql.SqlNode> hints)org.apache.calcite.sql.SqlKindcomp()Parses a comparison operator inside a SOME / ALL predicate.org.apache.calcite.sql.SqlIdentifierCompoundIdentifier()Parses a compound identifier.voidCompoundIdentifierType(List<org.apache.calcite.sql.SqlNode> list, List<org.apache.calcite.sql.SqlNode> extendList)Parses a compound identifier with optional type.voidCompoundIdentifierTypeCommaList(List<org.apache.calcite.sql.SqlNode> list, List<org.apache.calcite.sql.SqlNode> extendList)Parses a comma-separated list of compound identifiers.org.apache.calcite.sql.SqlIdentifierCompoundTableIdentifier()Parses a compound identifier in the FROM clause.org.apache.calcite.sql.SqlIdentifierContextVariable()org.apache.calcite.sql.SqlNodeCursorExpression(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)Parses a CURSOR(query) expression.org.apache.calcite.sql.SqlNodeListDataFileDefList()org.apache.calcite.sql.SqlDataTypeSpecDataType()org.apache.calcite.sql.SqlLiteralDateTimeLiteral()Parses a date/time literal.org.apache.calcite.sql.SqlTypeNameSpecDateTimeTypeName()Parse datetime types: date, time, timestamp.org.apache.calcite.avatica.util.TimeUnitDay()org.apache.calcite.sql.SqlNodeDefault()voiddisable_tracing()Disable tracing.org.apache.calcite.sql.SqlDynamicParamDynamicParam()Parses a dynamic parameter marker.voidenable_tracing()Enable tracing.org.apache.calcite.sql.SqlExplain.DepthExplainDepth()Parses WITH TYPE | WITH IMPLEMENTATION | WITHOUT IMPLEMENTATION modifier for EXPLAIN PLAN.org.apache.calcite.sql.SqlExplainLevelExplainDetailLevel()Parses INCLUDING ALL ATTRIBUTES modifier for EXPLAIN PLAN.org.apache.calcite.sql.SqlNodeExplicitTable(org.apache.calcite.sql.parser.SqlParserPos pos)Parses an explicit TABLE t reference.org.apache.calcite.sql.SqlNodeExpression(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)Parses a row expression or a parenthesized expression of any kind.List<Object>Expression2(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)Parses a binary row expression, or a parenthesized expression of any kind.voidExpression2b(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext, List<Object> list)org.apache.calcite.sql.SqlNodeExpression3(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)Parses a unary row expression, or a parenthesized expression of any kind.org.apache.calcite.sql.SqlNodeListExpressionCommaList(org.apache.calcite.sql.parser.Span s, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)Parses a list of expressions separated by commas.voidExpressionCommaList2(List<org.apache.calcite.sql.SqlNode> list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)Parses a list of expressions separated by commas, appending expressions to a given list.org.apache.calcite.sql.SqlNodeExtendedTableRef()Allows parser to be extended with new types of table references.org.apache.calcite.sql.SqlNodeListExtendList()voidFieldNameTypeCommaList(List<org.apache.calcite.sql.SqlIdentifier> fieldNames, List<org.apache.calcite.sql.SqlDataTypeSpec> fieldTypes)Parse a "name1 type1 [NULL | NOT NULL], name2 type2 [NULL | NOT NULL] ..." list, the field type default is not nullable.org.apache.calcite.sql.SqlNodeFloorCeilOptions(org.apache.calcite.sql.parser.Span s, boolean floorFlag)org.apache.calcite.sql.SqlNodeFromClause()Parses the FROM clause for a SELECT.org.apache.calcite.sql.SqlIdentifierFunctionName()Parses the name of a function (either a compound identifier or a reserved word which can be used as a function name).ListFunctionParameterList(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)Parses function parameter lists including DISTINCT keyword recognition, DEFAULT, and named argument assignment.ParseExceptiongenerateParseException()Generate ParseException.org.apache.calcite.sql.parser.SqlAbstractParserImpl.MetadatagetMetadata()TokengetNextToken()Get the next Token.protected org.apache.calcite.sql.parser.SqlParserPosgetPos()TokengetToken(int index)Get the specific Token.org.apache.calcite.sql.SqlNodeListGroupByOpt()Parses the optional GROUP BY clause for SELECT.org.apache.calcite.sql.SqlCallGroupByWindowingCall()Parses a call to a grouping function inside the GROUP BY clause, for exampleTUMBLE(rowtime, INTERVAL '1' MINUTE).org.apache.calcite.sql.SqlNodeGroupingElement()List<org.apache.calcite.sql.SqlNode>GroupingElementList()org.apache.calcite.sql.SqlNodeHavingOpt()Parses the optional HAVING clause for SELECT.org.apache.calcite.avatica.util.TimeUnitHour()StringIdentifier()Parses a simple identifier as a String.voidIdentifierSegment(List<String> names, List<org.apache.calcite.sql.parser.SqlParserPos> positions)Parses one segment of an identifier that may be composite.org.apache.calcite.sql.SqlLiteralIntervalLiteral()Parses an interval literal.org.apache.calcite.sql.SqlNodeIntervalLiteralOrExpression()Parses an interval literal (e.g.org.apache.calcite.sql.SqlIntervalQualifierIntervalQualifier()org.apache.calcite.sql.SqlIntervalQualifierIntervalQualifierStart()Interval qualifier without 'TO unit'.intIntLiteral()org.apache.calcite.sql.SqlNodeJdbcFunctionCall()Parses a function call expression with JDBC syntax.org.apache.calcite.sql.SqlLiteralJdbcOdbcDataType()org.apache.calcite.sql.SqlJdbcDataTypeNameJdbcOdbcDataTypeName()org.apache.calcite.sql.SqlNodeJoinTable(org.apache.calcite.sql.SqlNode e)Matches "LEFT JOIN t ON ...", "RIGHT JOIN t USING ...", "JOIN t".org.apache.calcite.sql.SqlLiteralJoinType()List<org.apache.calcite.sql.SqlNode>JsonApiCommonSyntax()org.apache.calcite.sql.SqlCallJsonArrayAggFunctionCall()org.apache.calcite.sql.SqlNodeListJsonArrayAggOrderByClause()org.apache.calcite.sql.SqlCallJsonArrayFunctionCall()org.apache.calcite.sql.SqlNodeJsonConstructorNullClause()org.apache.calcite.sql.SqlJsonExistsErrorBehaviorJsonExistsErrorBehavior()org.apache.calcite.sql.SqlCallJsonExistsFunctionCall()voidJsonInputClause()org.apache.calcite.sql.SqlNodeJsonName()List<org.apache.calcite.sql.SqlNode>JsonNameAndValue()org.apache.calcite.sql.SqlCallJsonObjectAggFunctionCall()org.apache.calcite.sql.SqlCallJsonObjectFunctionCall()org.apache.calcite.sql.SqlDataTypeSpecJsonOutputClause()org.apache.calcite.sql.SqlNodeJsonPathSpec()List<org.apache.calcite.sql.SqlNode>JsonQueryEmptyOrErrorBehavior()org.apache.calcite.sql.SqlCallJsonQueryFunctionCall()org.apache.calcite.sql.SqlNodeJsonQueryWrapperBehavior()org.apache.calcite.sql.SqlJsonEncodingJsonRepresentation()org.apache.calcite.sql.SqlDataTypeSpecJsonReturningClause()List<org.apache.calcite.sql.SqlNode>JsonValueEmptyOrErrorBehavior()org.apache.calcite.sql.SqlCallJsonValueFunctionCall()voidKeyValueOption(List<org.apache.calcite.sql.SqlNode> list)Parses an option with format key=val whose key is a simple identifier or string literal and value is a string literal.org.apache.calcite.sql.SqlNodeLeafQuery(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)Parses a leaf in a query expression (SELECT, VALUES or TABLE).org.apache.calcite.sql.SqlNodeLeafQueryOrExpr(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)Parses either a row expression, a leaf query expression, or a parenthesized expression of any kind.org.apache.calcite.sql.SqlNodeLiteral()Parses a literal expression, allowing continued string literals.org.apache.calcite.sql.SqlNodeLiteralOrIntervalExpression()Parses a literal or an interval expression.org.apache.calcite.sql.SqlNodeMapConstructor()Parses a MAP constructororg.apache.calcite.sql.SqlMatchRecognizeMatchRecognize(org.apache.calcite.sql.SqlNode tableRef)Parses a MATCH_RECOGNIZE clause following a table expression.org.apache.calcite.sql.SqlCallMatchRecognizeCallWithModifier()org.apache.calcite.sql.SqlCallMatchRecognizeFunctionCall()org.apache.calcite.sql.SqlCallMatchRecognizeNavigationLogical()org.apache.calcite.sql.SqlCallMatchRecognizeNavigationPhysical()org.apache.calcite.sql.SqlNodeMeasureColumn()org.apache.calcite.sql.SqlNodeListMeasureColumnCommaList(org.apache.calcite.sql.parser.Span s)org.apache.calcite.avatica.util.TimeUnitMinute()org.apache.calcite.avatica.util.TimeUnitMonth()org.apache.calcite.sql.SqlNodeMultisetConstructor()Parses a MULTISET constructororg.apache.calcite.sql.SqlCallNamedCall()org.apache.calcite.sql.SqlNodeNamedFunctionCall()Parses a call to a named function (could be a builtin with regular syntax, or else a UDF).org.apache.calcite.sql.SqlNodeNamedRoutineCall(org.apache.calcite.sql.SqlFunctionCategory routineType, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)org.apache.calcite.sql.SqlLiteralNatural()org.apache.calcite.sql.SqlNodeNewSpecification()Parses a NEW UDT(...) expression.org.apache.calcite.sql.SqlNodeNonIntervalLiteral()Parses a literal that is not an interval literal.StringNonReservedJdbcFunctionName()Parses the name of a JDBC function that is a token but is not reserved.StringNonReservedKeyWord()Parses a non-reserved keyword for use as an identifier.voidNonReservedKeyWord0of3()voidNonReservedKeyWord1of3()voidNonReservedKeyWord2of3()org.apache.calcite.sql.parser.SqlParseExceptionnormalizeException(Throwable ex)booleanNullableOptDefaultFalse()Parse a nullable option, default is false.booleanNullableOptDefaultTrue()Parse a nullable option, default is true.org.apache.calcite.sql.SqlCallnullTreatment(org.apache.calcite.sql.SqlCall arg)org.apache.calcite.util.Pair<org.apache.calcite.sql.parser.SqlParserPos,org.apache.calcite.sql.SqlOperator>NullTreatment()org.apache.calcite.sql.SqlLiteralNumericLiteral()Parses a numeric literal (can be signed)org.apache.calcite.sql.SqlNodeOptionValue()Parses an option value, it's either a string or a numeric.org.apache.calcite.sql.SqlNodeListOrderBy(boolean accept)Parses an ORDER BY clause.org.apache.calcite.sql.SqlNodeOrderedQueryOrExpr(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)Parses either a row expression or a query expression with an optional ORDER BY.org.apache.calcite.sql.SqlNodeOrderItem()Parses one list item in an ORDER BY clause.org.apache.calcite.util.Pair<org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlNodeList>ParenthesizedCompoundIdentifierList()List of compound identifiers in parentheses.org.apache.calcite.sql.SqlNodeParenthesizedExpression(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)Parses a parenthesized query or single row expression.org.apache.calcite.sql.SqlNodeListParenthesizedKeyValueOptionCommaList()org.apache.calcite.sql.SqlNodeListParenthesizedLiteralOptionCommaList()Parses a literal list separated by comma.org.apache.calcite.sql.SqlNodeListParenthesizedQueryOrCommaList(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)Parses a parenthesized query or comma-list of row expressions.org.apache.calcite.sql.SqlNodeListParenthesizedQueryOrCommaListWithDefault(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)As ParenthesizedQueryOrCommaList, but allows DEFAULT in place of any of the expressions.org.apache.calcite.sql.SqlNodeListParenthesizedSimpleIdentifierList()List of simple identifiers in parentheses.org.apache.calcite.sql.SqlNodeparseSqlExpressionEof()org.apache.calcite.sql.SqlNodeparseSqlStmtEof()org.apache.calcite.sql.SqlNodeListparseSqlStmtList()org.apache.calcite.sql.SqlNodePatternDefinition()org.apache.calcite.sql.SqlNodeListPatternDefinitionCommaList(org.apache.calcite.sql.parser.Span s)org.apache.calcite.sql.SqlNodePatternExpression()org.apache.calcite.sql.SqlNodePatternFactor()org.apache.calcite.sql.SqlNodePatternPrimary()org.apache.calcite.sql.SqlNodePatternTerm()org.apache.calcite.sql.SqlNodePeriodConstructor()Parses a PERIOD constructororg.apache.calcite.sql.SqlOperatorperiodOperator()org.apache.calcite.sql.SqlNodePivot(org.apache.calcite.sql.SqlNode tableRef)Parses a PIVOT clause following a table expression.voidPivotAgg(List<org.apache.calcite.sql.SqlNode> list)voidPivotValue(List<org.apache.calcite.sql.SqlNode> list)org.apache.calcite.sql.SqlPostfixOperatorPostfixRowOperator()Parses a postfix row operator like IS NOT NULL.intPrecisionOpt()org.apache.calcite.sql.SqlPrefixOperatorPrefixRowOperator()Parses a prefix row operator like NOT.org.apache.calcite.sql.SqlNodeQueryOrExpr(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)Parses either a row expression or a query expression without ORDER BY.voidReInit(InputStream stream)Reinitialise.voidReInit(InputStream stream, String encoding)Reinitialise.voidReInit(Reader stream)Reinitialise.voidReInit(SqlParserImplTokenManager tm)Reinitialise.org.apache.calcite.sql.SqlIdentifierReservedFunctionName()Parses a reserved word which is used as the name of a function.org.apache.calcite.sql.SqlNodeRowConstructor()Parses a row constructor in the context of a VALUES expression.voidRowConstructorList(List<org.apache.calcite.sql.SqlNode> list)Parses one or more rows in a VALUES expression.org.apache.calcite.sql.SqlNodeRowExpressionExtension()Parses a row expression extension, it can be either an identifier, or a call to a named function.org.apache.calcite.sql.SqlTypeNameSpecRowTypeName()Parse Row type with format: Row(name1 type1, name2 type2).StringScope()org.apache.calcite.avatica.util.TimeUnitSecond()org.apache.calcite.sql.SqlNodeSelectExpression()Parses one unaliased expression in a select list.org.apache.calcite.sql.SqlNodeSelectItem()Parses one item in a select list.List<org.apache.calcite.sql.SqlNode>SelectList()Parses the select list of a SELECT statement.org.apache.calcite.sql.SqlCallSequenceExpression()voidsetConformance(org.apache.calcite.sql.validate.SqlConformance conformance)voidsetIdentifierMaxLength(int identifierMaxLength)voidsetQuotedCasing(org.apache.calcite.avatica.util.Casing quotedCasing)voidsetTabSize(int tabSize)voidsetUnquotedCasing(org.apache.calcite.avatica.util.Casing unquotedCasing)org.apache.calcite.sql.SqlIdentifierSimpleIdentifier()Parses a simple identifier as an SqlIdentifier.voidSimpleIdentifierCommaList(List<org.apache.calcite.sql.SqlNode> list)Parses a comma-separated list of simple identifiers.org.apache.calcite.sql.SqlIdentifierSimpleIdentifierFromStringLiteral()Parses a character literal as an SqlIdentifier.org.apache.calcite.sql.SqlNodeListSimpleIdentifierOrList()List of simple identifiers in parentheses or one simple identifier.org.apache.calcite.sql.SqlSnapshotSnapshot(org.apache.calcite.sql.SqlNode tableRef)Parses a FOR SYSTEM_TIME clause following a table expression.org.apache.calcite.sql.SqlLiteralSpecialLiteral()Parse a special literal keywordorg.apache.calcite.sql.SqlAlterSqlAlter()Parses an expression for setting or resetting an option in SQL, such as QUOTED_IDENTIFIERS, or explain plan level (physical/logical).org.apache.calcite.sql.SqlNodeSqlDelete()Parses a DELETE statement.org.apache.calcite.sql.SqlNodeSqlDescribe()Parses a DESCRIBE statement.org.apache.calcite.sql.SqlNodeSqlExplain()Parses an EXPLAIN PLAN statement.org.apache.calcite.sql.SqlNodeSqlExpressionEof()Parses a SQL expression (such as might occur in a WHERE clause) followed by the end-of-file symbol.org.apache.calcite.sql.SqlNodeSqlInsert()Parses an INSERT statement.SqlInsertFromFileSqlInsertFromFile()INSERT INTO [db_name.]table_name FROM [ FILE | ARCHIVE ] 'file_uri' [, [ FILE | ARCHIVE ] 'file_uri' ]voidSqlInsertKeywords(List<org.apache.calcite.sql.SqlLiteral> keywords)org.apache.calcite.sql.SqlNodeSqlMerge()Parses a MERGE statement.org.apache.calcite.sql.SqlNodeSqlProcedureCall()Parses a CALL statement.org.apache.calcite.sql.SqlNodeSqlQueryEof()Parses a query (SELECT, UNION, INTERSECT, EXCEPT, VALUES, TABLE) followed by the end-of-file symbol.org.apache.calcite.sql.SqlNodeSqlQueryOrDml()Parses a query (SELECT or VALUES) or DML statement (INSERT, UPDATE, DELETE, MERGE).org.apache.calcite.sql.SqlSelectSqlSelect()Parses a leaf SELECT expression without ORDER BY.voidSqlSelectKeywords(List<org.apache.calcite.sql.SqlLiteral> keywords)org.apache.calcite.sql.SqlSetOptionSqlSetOption(org.apache.calcite.sql.parser.Span s, String scope)Parses "SET <NAME> = VALUE" or "RESET <NAME>", without a leading "ALTER <SCOPE>".org.apache.calcite.sql.SqlNodeSqlStmt()Parses an SQL statement.org.apache.calcite.sql.SqlNodeSqlStmtEof()Parses an SQL statement followed by the end-of-file symbol.org.apache.calcite.sql.SqlNodeListSqlStmtList()Parses a list of SQL statements separated by semicolon.org.apache.calcite.sql.SqlNodeListSqlStmtsEof()org.apache.calcite.sql.SqlTypeNameSpecSqlTypeName(org.apache.calcite.sql.parser.Span s)org.apache.calcite.sql.SqlTypeNameSpecSqlTypeName1(org.apache.calcite.sql.parser.Span s)org.apache.calcite.sql.SqlTypeNameSpecSqlTypeName2(org.apache.calcite.sql.parser.Span s)org.apache.calcite.sql.SqlTypeNameSpecSqlTypeName3(org.apache.calcite.sql.parser.Span s)org.apache.calcite.sql.SqlNodeSqlUpdate()Parses an UPDATE statement.org.apache.calcite.sql.SqlNodeStandardFloorCeilOptions(org.apache.calcite.sql.parser.Span s, boolean floorFlag)org.apache.calcite.sql.SqlCallStringAggFunctionCall()Parses a call to the STRING_AGG aggregate function (or to an aggregate function with similar syntax: ARRAY_AGG, ARRAY_CONCAT_AGG, GROUP_CONCAT).org.apache.calcite.sql.SqlNodeStringLiteral()Parses a string literal.org.apache.calcite.sql.SqlNodeSubsetDefinition()org.apache.calcite.sql.SqlNodeListSubsetDefinitionCommaList(org.apache.calcite.sql.parser.Span s)voidswitchTo(org.apache.calcite.sql.parser.SqlAbstractParserImpl.LexicalState state)org.apache.calcite.sql.SqlNodeTableConstructor()Parses a VALUES leaf query expression.org.apache.calcite.sql.SqlNodeTableFunctionCall(org.apache.calcite.sql.parser.SqlParserPos pos)voidTableIdentifierSegment(List<String> names, List<org.apache.calcite.sql.parser.SqlParserPos> positions)AsIdentifierSegment(java.util.List<java.lang.String>, java.util.List<org.apache.calcite.sql.parser.SqlParserPos>)but part of a table name (for example, followingFROM,INSERTorUPDATE).org.apache.calcite.sql.SqlNodeTableOverOpt()Allows an OVER clause following a table expression as an extension to standard SQL syntax.org.apache.calcite.sql.SqlNodeTableRef()Parses a table reference in a FROM clause, not lateral unless LATERAL is explicitly specified.org.apache.calcite.sql.SqlNodeTableRef2(boolean lateral)Parses a table reference in a FROM clause.org.apache.calcite.sql.SqlNodeTableRefWithHintsOpt()Parses a table reference with optional hints.org.apache.calcite.sql.SqlCallTimestampAddFunctionCall()Parses a call to TIMESTAMPADD.org.apache.calcite.sql.SqlCallTimestampDiffFunctionCall()Parses a call to TIMESTAMPDIFF.org.apache.calcite.avatica.util.TimeUnitTimestampInterval()org.apache.calcite.avatica.util.TimeUnitTimeUnit()Parses time unit for EXTRACT, CEIL and FLOOR functions.booleanTimeZoneOpt()Parse a time zone suffix for DateTime types.booleantrace_enabled()Trace enabled.org.apache.calcite.sql.SqlTypeNameSpecTypeName()org.apache.calcite.sql.SqlNodeUnpivot(org.apache.calcite.sql.SqlNode tableRef)Parses an UNPIVOT clause following a table expression.voidUnpivotValue(List<org.apache.calcite.sql.SqlNode> list)ListUnquantifiedFunctionParameterList(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext)Parses function parameter lists.intUnsignedIntLiteral()org.apache.calcite.sql.SqlNumericLiteralUnsignedNumericLiteral()Parses a unsigned numeric literalorg.apache.calcite.sql.SqlNodeUnsignedNumericLiteralOrParam()Numeric literal or parameter; used in LIMIT, OFFSET and FETCH clauses.voidUnusedExtension()Defines a production which can never be accepted by the parser.org.apache.calcite.sql.SqlUpdateWhenMatchedClause(org.apache.calcite.sql.SqlNode table, org.apache.calcite.sql.SqlIdentifier alias)org.apache.calcite.sql.SqlInsertWhenNotMatchedClause(org.apache.calcite.sql.SqlNode table)org.apache.calcite.sql.SqlNodeWhereOpt()Parses the optional WHERE clause for SELECT, DELETE, and UPDATE.org.apache.calcite.sql.SqlNodeListWindowOpt()Parses the optional WINDOW clause for SELECTorg.apache.calcite.sql.SqlNodeWindowRange()org.apache.calcite.sql.SqlWindowWindowSpecification()Parses a window specification.org.apache.calcite.sql.SqlCallwithinDistinct(org.apache.calcite.sql.SqlNode arg)org.apache.calcite.sql.SqlCallwithinGroup(org.apache.calcite.sql.SqlNode arg)org.apache.calcite.sql.SqlWithItemWithItem()org.apache.calcite.sql.SqlNodeListWithList()org.apache.calcite.avatica.util.TimeUnitYear()
-
-
-
Field Detail
-
FACTORY
public static final org.apache.calcite.sql.parser.SqlParserImplFactory FACTORY
SqlParserImplFactoryimplementation for creating parser.
-
token_source
public SqlParserImplTokenManager token_source
Generated Token Manager.
-
token
public Token token
Current token.
-
jj_nt
public Token jj_nt
Next token.
-
-
Constructor Detail
-
SqlParserImpl
public SqlParserImpl(InputStream stream)
Constructor with InputStream.
-
SqlParserImpl
public SqlParserImpl(InputStream stream, String encoding)
Constructor with InputStream and supplied encoding
-
SqlParserImpl
public SqlParserImpl(Reader stream)
Constructor.
-
SqlParserImpl
public SqlParserImpl(SqlParserImplTokenManager tm)
Constructor with generated Token Manager.
-
-
Method Detail
-
normalizeException
public org.apache.calcite.sql.parser.SqlParseException normalizeException(Throwable ex)
- Specified by:
normalizeExceptionin classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
getMetadata
public org.apache.calcite.sql.parser.SqlAbstractParserImpl.Metadata getMetadata()
- Specified by:
getMetadatain classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
setTabSize
public void setTabSize(int tabSize)
- Specified by:
setTabSizein classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
switchTo
public void switchTo(org.apache.calcite.sql.parser.SqlAbstractParserImpl.LexicalState state)
- Specified by:
switchToin classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
setQuotedCasing
public void setQuotedCasing(org.apache.calcite.avatica.util.Casing quotedCasing)
- Specified by:
setQuotedCasingin classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
setUnquotedCasing
public void setUnquotedCasing(org.apache.calcite.avatica.util.Casing unquotedCasing)
- Specified by:
setUnquotedCasingin classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
setIdentifierMaxLength
public void setIdentifierMaxLength(int identifierMaxLength)
- Specified by:
setIdentifierMaxLengthin classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
setConformance
public void setConformance(org.apache.calcite.sql.validate.SqlConformance conformance)
- Specified by:
setConformancein classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
parseSqlExpressionEof
public org.apache.calcite.sql.SqlNode parseSqlExpressionEof() throws Exception- Specified by:
parseSqlExpressionEofin classorg.apache.calcite.sql.parser.SqlAbstractParserImpl- Throws:
Exception
-
parseSqlStmtEof
public org.apache.calcite.sql.SqlNode parseSqlStmtEof() throws Exception- Specified by:
parseSqlStmtEofin classorg.apache.calcite.sql.parser.SqlAbstractParserImpl- Throws:
Exception
-
parseSqlStmtList
public org.apache.calcite.sql.SqlNodeList parseSqlStmtList() throws Exception- Specified by:
parseSqlStmtListin classorg.apache.calcite.sql.parser.SqlAbstractParserImpl- Throws:
Exception
-
ExtendedTableRef
public final org.apache.calcite.sql.SqlNode ExtendedTableRef() throws ParseExceptionAllows parser to be extended with new types of table references. The default implementation of this production is empty.- Throws:
ParseException
-
TableOverOpt
public final org.apache.calcite.sql.SqlNode TableOverOpt() throws ParseExceptionAllows an OVER clause following a table expression as an extension to standard SQL syntax. The default implementation of this production is empty.- Throws:
ParseException
-
SqlSelectKeywords
public final void SqlSelectKeywords(List<org.apache.calcite.sql.SqlLiteral> keywords) throws ParseException
- Throws:
ParseException
-
SqlInsertKeywords
public final void SqlInsertKeywords(List<org.apache.calcite.sql.SqlLiteral> keywords) throws ParseException
- Throws:
ParseException
-
FloorCeilOptions
public final org.apache.calcite.sql.SqlNode FloorCeilOptions(org.apache.calcite.sql.parser.Span s, boolean floorFlag) throws ParseException- Throws:
ParseException
-
getPos
protected org.apache.calcite.sql.parser.SqlParserPos getPos() throws ParseException- Specified by:
getPosin classorg.apache.calcite.sql.parser.SqlAbstractParserImpl- Throws:
ParseException
-
OrderedQueryOrExpr
public final org.apache.calcite.sql.SqlNode OrderedQueryOrExpr(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseExceptionParses either a row expression or a query expression with an optional ORDER BY.Postgres syntax for limit:
[ LIMIT { count | ALL } ] [ OFFSET start ]MySQL syntax for limit:
[ LIMIT { count | start, count } ]SQL:2008 syntax for limit:
[ OFFSET start { ROW | ROWS } ] [ FETCH { FIRST | NEXT } [ count ] { ROW | ROWS } ONLY ]- Throws:
ParseException
-
LeafQuery
public final org.apache.calcite.sql.SqlNode LeafQuery(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseExceptionParses a leaf in a query expression (SELECT, VALUES or TABLE).- Throws:
ParseException
-
ParenthesizedExpression
public final org.apache.calcite.sql.SqlNode ParenthesizedExpression(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseExceptionParses a parenthesized query or single row expression.- Throws:
ParseException
-
ParenthesizedQueryOrCommaList
public final org.apache.calcite.sql.SqlNodeList ParenthesizedQueryOrCommaList(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseExceptionParses a parenthesized query or comma-list of row expressions.REVIEW jvs 8-Feb-2004: There's a small hole in this production. It can be used to construct something like
WHERE x IN (select count(*) from t where c=d,5)
which should be illegal. The above is interpreted as equivalent to
WHERE x IN ((select count(*) from t where c=d),5)
which is a legal use of a sub-query. The only way to fix the hole is to be able to remember whether a subexpression was parenthesized or not, which means preserving parentheses in the SqlNode tree. This is probably desirable anyway for use in purely syntactic parsing applications (e.g. SQL pretty-printer). However, if this is done, it's important to also make isA() on the paren node call down to its operand so that we can always correctly discriminate a query from a row expression.
- Throws:
ParseException
-
ParenthesizedQueryOrCommaListWithDefault
public final org.apache.calcite.sql.SqlNodeList ParenthesizedQueryOrCommaListWithDefault(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseExceptionAs ParenthesizedQueryOrCommaList, but allows DEFAULT in place of any of the expressions. For example,(x, DEFAULT, null, DEFAULT).- Throws:
ParseException
-
UnquantifiedFunctionParameterList
public final List UnquantifiedFunctionParameterList(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException
Parses function parameter lists. If the list starts with DISTINCT or ALL, it is discarded.- Throws:
ParseException
-
FunctionParameterList
public final List FunctionParameterList(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException
Parses function parameter lists including DISTINCT keyword recognition, DEFAULT, and named argument assignment.- Throws:
ParseException
-
AllOrDistinct
public final org.apache.calcite.sql.SqlLiteral AllOrDistinct() throws ParseException- Throws:
ParseException
-
Arg0
public final void Arg0(List list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException
- Throws:
ParseException
-
Arg
public final void Arg(List list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException
- Throws:
ParseException
-
Default
public final org.apache.calcite.sql.SqlNode Default() throws ParseException- Throws:
ParseException
-
SqlQueryEof
public final org.apache.calcite.sql.SqlNode SqlQueryEof() throws ParseExceptionParses a query (SELECT, UNION, INTERSECT, EXCEPT, VALUES, TABLE) followed by the end-of-file symbol.- Throws:
ParseException
-
SqlStmtList
public final org.apache.calcite.sql.SqlNodeList SqlStmtList() throws ParseExceptionParses a list of SQL statements separated by semicolon. The semicolon is required between statements, but is optional at the end.- Throws:
ParseException
-
SqlStmt
public final org.apache.calcite.sql.SqlNode SqlStmt() throws ParseExceptionParses an SQL statement.- Throws:
ParseException
-
SqlStmtEof
public final org.apache.calcite.sql.SqlNode SqlStmtEof() throws ParseExceptionParses an SQL statement followed by the end-of-file symbol.- Throws:
ParseException
-
DataFileDefList
public final org.apache.calcite.sql.SqlNodeList DataFileDefList() throws ParseException- Throws:
ParseException
-
SqlInsertFromFile
public final SqlInsertFromFile SqlInsertFromFile() throws ParseException
INSERT INTO [db_name.]table_name FROM [ FILE | ARCHIVE ] 'file_uri' [, [ FILE | ARCHIVE ] 'file_uri' ]- Throws:
ParseException
-
SqlStmtsEof
public final org.apache.calcite.sql.SqlNodeList SqlStmtsEof() throws ParseException- Throws:
ParseException
-
ParenthesizedKeyValueOptionCommaList
public final org.apache.calcite.sql.SqlNodeList ParenthesizedKeyValueOptionCommaList() throws ParseException- Throws:
ParseException
-
KeyValueOption
public final void KeyValueOption(List<org.apache.calcite.sql.SqlNode> list) throws ParseException
Parses an option with format key=val whose key is a simple identifier or string literal and value is a string literal.- Throws:
ParseException
-
OptionValue
public final org.apache.calcite.sql.SqlNode OptionValue() throws ParseExceptionParses an option value, it's either a string or a numeric.- Throws:
ParseException
-
ParenthesizedLiteralOptionCommaList
public final org.apache.calcite.sql.SqlNodeList ParenthesizedLiteralOptionCommaList() throws ParseExceptionParses a literal list separated by comma. The literal is either a string or a numeric.- Throws:
ParseException
-
CommaSeparatedSqlHints
public final void CommaSeparatedSqlHints(List<org.apache.calcite.sql.SqlNode> hints) throws ParseException
- Throws:
ParseException
-
TableRefWithHintsOpt
public final org.apache.calcite.sql.SqlNode TableRefWithHintsOpt() throws ParseExceptionParses a table reference with optional hints.- Throws:
ParseException
-
SqlSelect
public final org.apache.calcite.sql.SqlSelect SqlSelect() throws ParseExceptionParses a leaf SELECT expression without ORDER BY.- Throws:
ParseException
-
SqlExplain
public final org.apache.calcite.sql.SqlNode SqlExplain() throws ParseExceptionParses an EXPLAIN PLAN statement.- Throws:
ParseException
-
SqlQueryOrDml
public final org.apache.calcite.sql.SqlNode SqlQueryOrDml() throws ParseExceptionParses a query (SELECT or VALUES) or DML statement (INSERT, UPDATE, DELETE, MERGE).- Throws:
ParseException
-
ExplainDepth
public final org.apache.calcite.sql.SqlExplain.Depth ExplainDepth() throws ParseExceptionParses WITH TYPE | WITH IMPLEMENTATION | WITHOUT IMPLEMENTATION modifier for EXPLAIN PLAN.- Throws:
ParseException
-
ExplainDetailLevel
public final org.apache.calcite.sql.SqlExplainLevel ExplainDetailLevel() throws ParseExceptionParses INCLUDING ALL ATTRIBUTES modifier for EXPLAIN PLAN.- Throws:
ParseException
-
SqlDescribe
public final org.apache.calcite.sql.SqlNode SqlDescribe() throws ParseExceptionParses a DESCRIBE statement.- Throws:
ParseException
-
SqlProcedureCall
public final org.apache.calcite.sql.SqlNode SqlProcedureCall() throws ParseExceptionParses a CALL statement.- Throws:
ParseException
-
NamedRoutineCall
public final org.apache.calcite.sql.SqlNode NamedRoutineCall(org.apache.calcite.sql.SqlFunctionCategory routineType, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException- Throws:
ParseException
-
SqlInsert
public final org.apache.calcite.sql.SqlNode SqlInsert() throws ParseExceptionParses an INSERT statement.- Throws:
ParseException
-
SqlDelete
public final org.apache.calcite.sql.SqlNode SqlDelete() throws ParseExceptionParses a DELETE statement.- Throws:
ParseException
-
SqlUpdate
public final org.apache.calcite.sql.SqlNode SqlUpdate() throws ParseExceptionParses an UPDATE statement.- Throws:
ParseException
-
SqlMerge
public final org.apache.calcite.sql.SqlNode SqlMerge() throws ParseExceptionParses a MERGE statement.- Throws:
ParseException
-
WhenMatchedClause
public final org.apache.calcite.sql.SqlUpdate WhenMatchedClause(org.apache.calcite.sql.SqlNode table, org.apache.calcite.sql.SqlIdentifier alias) throws ParseException- Throws:
ParseException
-
WhenNotMatchedClause
public final org.apache.calcite.sql.SqlInsert WhenNotMatchedClause(org.apache.calcite.sql.SqlNode table) throws ParseException- Throws:
ParseException
-
SelectList
public final List<org.apache.calcite.sql.SqlNode> SelectList() throws ParseException
Parses the select list of a SELECT statement.- Throws:
ParseException
-
SelectItem
public final org.apache.calcite.sql.SqlNode SelectItem() throws ParseExceptionParses one item in a select list.- Throws:
ParseException
-
SelectExpression
public final org.apache.calcite.sql.SqlNode SelectExpression() throws ParseExceptionParses one unaliased expression in a select list.- Throws:
ParseException
-
Natural
public final org.apache.calcite.sql.SqlLiteral Natural() throws ParseException- Throws:
ParseException
-
JoinType
public final org.apache.calcite.sql.SqlLiteral JoinType() throws ParseException- Throws:
ParseException
-
JoinTable
public final org.apache.calcite.sql.SqlNode JoinTable(org.apache.calcite.sql.SqlNode e) throws ParseExceptionMatches "LEFT JOIN t ON ...", "RIGHT JOIN t USING ...", "JOIN t".- Throws:
ParseException
-
FromClause
public final org.apache.calcite.sql.SqlNode FromClause() throws ParseExceptionParses the FROM clause for a SELECT.FROM is mandatory in standard SQL, optional in dialects such as MySQL, PostgreSQL. The parser allows SELECT without FROM, but the validator fails if conformance is, say, STRICT_2003.
- Throws:
ParseException
-
TableRef
public final org.apache.calcite.sql.SqlNode TableRef() throws ParseExceptionParses a table reference in a FROM clause, not lateral unless LATERAL is explicitly specified.- Throws:
ParseException
-
TableRef2
public final org.apache.calcite.sql.SqlNode TableRef2(boolean lateral) throws ParseExceptionParses a table reference in a FROM clause.- Throws:
ParseException
-
ExtendList
public final org.apache.calcite.sql.SqlNodeList ExtendList() throws ParseException- Throws:
ParseException
-
ColumnType
public final void ColumnType(List<org.apache.calcite.sql.SqlNode> list) throws ParseException
- Throws:
ParseException
-
CompoundIdentifierType
public final void CompoundIdentifierType(List<org.apache.calcite.sql.SqlNode> list, List<org.apache.calcite.sql.SqlNode> extendList) throws ParseException
Parses a compound identifier with optional type.- Throws:
ParseException
-
TableFunctionCall
public final org.apache.calcite.sql.SqlNode TableFunctionCall(org.apache.calcite.sql.parser.SqlParserPos pos) throws ParseException- Throws:
ParseException
-
ExplicitTable
public final org.apache.calcite.sql.SqlNode ExplicitTable(org.apache.calcite.sql.parser.SqlParserPos pos) throws ParseExceptionParses an explicit TABLE t reference.- Throws:
ParseException
-
TableConstructor
public final org.apache.calcite.sql.SqlNode TableConstructor() throws ParseExceptionParses a VALUES leaf query expression.- Throws:
ParseException
-
RowConstructorList
public final void RowConstructorList(List<org.apache.calcite.sql.SqlNode> list) throws ParseException
Parses one or more rows in a VALUES expression.- Throws:
ParseException
-
RowConstructor
public final org.apache.calcite.sql.SqlNode RowConstructor() throws ParseExceptionParses a row constructor in the context of a VALUES expression.- Throws:
ParseException
-
WhereOpt
public final org.apache.calcite.sql.SqlNode WhereOpt() throws ParseExceptionParses the optional WHERE clause for SELECT, DELETE, and UPDATE.- Throws:
ParseException
-
GroupByOpt
public final org.apache.calcite.sql.SqlNodeList GroupByOpt() throws ParseExceptionParses the optional GROUP BY clause for SELECT.- Throws:
ParseException
-
GroupingElementList
public final List<org.apache.calcite.sql.SqlNode> GroupingElementList() throws ParseException
- Throws:
ParseException
-
GroupingElement
public final org.apache.calcite.sql.SqlNode GroupingElement() throws ParseException- Throws:
ParseException
-
ExpressionCommaList
public final org.apache.calcite.sql.SqlNodeList ExpressionCommaList(org.apache.calcite.sql.parser.Span s, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseExceptionParses a list of expressions separated by commas.- Throws:
ParseException
-
ExpressionCommaList2
public final void ExpressionCommaList2(List<org.apache.calcite.sql.SqlNode> list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException
Parses a list of expressions separated by commas, appending expressions to a given list.- Throws:
ParseException
-
HavingOpt
public final org.apache.calcite.sql.SqlNode HavingOpt() throws ParseExceptionParses the optional HAVING clause for SELECT.- Throws:
ParseException
-
WindowOpt
public final org.apache.calcite.sql.SqlNodeList WindowOpt() throws ParseExceptionParses the optional WINDOW clause for SELECT- Throws:
ParseException
-
WindowSpecification
public final org.apache.calcite.sql.SqlWindow WindowSpecification() throws ParseExceptionParses a window specification.- Throws:
ParseException
-
WindowRange
public final org.apache.calcite.sql.SqlNode WindowRange() throws ParseException- Throws:
ParseException
-
OrderBy
public final org.apache.calcite.sql.SqlNodeList OrderBy(boolean accept) throws ParseExceptionParses an ORDER BY clause.- Throws:
ParseException
-
OrderItem
public final org.apache.calcite.sql.SqlNode OrderItem() throws ParseExceptionParses one list item in an ORDER BY clause.- Throws:
ParseException
-
Snapshot
public final org.apache.calcite.sql.SqlSnapshot Snapshot(org.apache.calcite.sql.SqlNode tableRef) throws ParseExceptionParses a FOR SYSTEM_TIME clause following a table expression.- Throws:
ParseException
-
Pivot
public final org.apache.calcite.sql.SqlNode Pivot(org.apache.calcite.sql.SqlNode tableRef) throws ParseExceptionParses a PIVOT clause following a table expression.- Throws:
ParseException
-
PivotAgg
public final void PivotAgg(List<org.apache.calcite.sql.SqlNode> list) throws ParseException
- Throws:
ParseException
-
PivotValue
public final void PivotValue(List<org.apache.calcite.sql.SqlNode> list) throws ParseException
- Throws:
ParseException
-
Unpivot
public final org.apache.calcite.sql.SqlNode Unpivot(org.apache.calcite.sql.SqlNode tableRef) throws ParseExceptionParses an UNPIVOT clause following a table expression.- Throws:
ParseException
-
UnpivotValue
public final void UnpivotValue(List<org.apache.calcite.sql.SqlNode> list) throws ParseException
- Throws:
ParseException
-
MatchRecognize
public final org.apache.calcite.sql.SqlMatchRecognize MatchRecognize(org.apache.calcite.sql.SqlNode tableRef) throws ParseExceptionParses a MATCH_RECOGNIZE clause following a table expression.- Throws:
ParseException
-
MeasureColumnCommaList
public final org.apache.calcite.sql.SqlNodeList MeasureColumnCommaList(org.apache.calcite.sql.parser.Span s) throws ParseException- Throws:
ParseException
-
MeasureColumn
public final org.apache.calcite.sql.SqlNode MeasureColumn() throws ParseException- Throws:
ParseException
-
PatternExpression
public final org.apache.calcite.sql.SqlNode PatternExpression() throws ParseException- Throws:
ParseException
-
PatternTerm
public final org.apache.calcite.sql.SqlNode PatternTerm() throws ParseException- Throws:
ParseException
-
PatternFactor
public final org.apache.calcite.sql.SqlNode PatternFactor() throws ParseException- Throws:
ParseException
-
PatternPrimary
public final org.apache.calcite.sql.SqlNode PatternPrimary() throws ParseException- Throws:
ParseException
-
SubsetDefinitionCommaList
public final org.apache.calcite.sql.SqlNodeList SubsetDefinitionCommaList(org.apache.calcite.sql.parser.Span s) throws ParseException- Throws:
ParseException
-
SubsetDefinition
public final org.apache.calcite.sql.SqlNode SubsetDefinition() throws ParseException- Throws:
ParseException
-
PatternDefinitionCommaList
public final org.apache.calcite.sql.SqlNodeList PatternDefinitionCommaList(org.apache.calcite.sql.parser.Span s) throws ParseException- Throws:
ParseException
-
PatternDefinition
public final org.apache.calcite.sql.SqlNode PatternDefinition() throws ParseException- Throws:
ParseException
-
SqlExpressionEof
public final org.apache.calcite.sql.SqlNode SqlExpressionEof() throws ParseExceptionParses a SQL expression (such as might occur in a WHERE clause) followed by the end-of-file symbol.- Throws:
ParseException
-
QueryOrExpr
public final org.apache.calcite.sql.SqlNode QueryOrExpr(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseExceptionParses either a row expression or a query expression without ORDER BY.- Throws:
ParseException
-
WithList
public final org.apache.calcite.sql.SqlNodeList WithList() throws ParseException- Throws:
ParseException
-
WithItem
public final org.apache.calcite.sql.SqlWithItem WithItem() throws ParseException- Throws:
ParseException
-
LeafQueryOrExpr
public final org.apache.calcite.sql.SqlNode LeafQueryOrExpr(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseExceptionParses either a row expression, a leaf query expression, or a parenthesized expression of any kind.- Throws:
ParseException
-
Expression
public final org.apache.calcite.sql.SqlNode Expression(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseExceptionParses a row expression or a parenthesized expression of any kind.- Throws:
ParseException
-
Expression2b
public final void Expression2b(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext, List<Object> list) throws ParseException- Throws:
ParseException
-
Expression2
public final List<Object> Expression2(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException
Parses a binary row expression, or a parenthesized expression of any kind.The result is as a flat list of operators and operands. The top-level call to get an expression should call
Expression(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext), but lower-level calls should call this, to give the parser the opportunity to associate operator calls.For example 'a = b like c = d' should come out '((a = b) like c) = d' because LIKE and '=' have the same precedence, but tends to come out as '(a = b) like (c = d)' because (a = b) and (c = d) are parsed as separate expressions.
- Throws:
ParseException
-
comp
public final org.apache.calcite.sql.SqlKind comp() throws ParseExceptionParses a comparison operator inside a SOME / ALL predicate.- Throws:
ParseException
-
Expression3
public final org.apache.calcite.sql.SqlNode Expression3(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseExceptionParses a unary row expression, or a parenthesized expression of any kind.- Throws:
ParseException
-
periodOperator
public final org.apache.calcite.sql.SqlOperator periodOperator() throws ParseException- Throws:
ParseException
-
CollateClause
public final org.apache.calcite.sql.SqlCollation CollateClause() throws ParseExceptionParses a COLLATE clause- Throws:
ParseException
-
UnsignedNumericLiteralOrParam
public final org.apache.calcite.sql.SqlNode UnsignedNumericLiteralOrParam() throws ParseExceptionNumeric literal or parameter; used in LIMIT, OFFSET and FETCH clauses.- Throws:
ParseException
-
RowExpressionExtension
public final org.apache.calcite.sql.SqlNode RowExpressionExtension() throws ParseExceptionParses a row expression extension, it can be either an identifier, or a call to a named function.- Throws:
ParseException
-
StringAggFunctionCall
public final org.apache.calcite.sql.SqlCall StringAggFunctionCall() throws ParseExceptionParses a call to the STRING_AGG aggregate function (or to an aggregate function with similar syntax: ARRAY_AGG, ARRAY_CONCAT_AGG, GROUP_CONCAT).- Throws:
ParseException
-
AtomicRowExpression
public final org.apache.calcite.sql.SqlNode AtomicRowExpression() throws ParseExceptionParses an atomic row expression.- Throws:
ParseException
-
CaseExpression
public final org.apache.calcite.sql.SqlNode CaseExpression() throws ParseException- Throws:
ParseException
-
SequenceExpression
public final org.apache.calcite.sql.SqlCall SequenceExpression() throws ParseException- Throws:
ParseException
-
SqlSetOption
public final org.apache.calcite.sql.SqlSetOption SqlSetOption(org.apache.calcite.sql.parser.Span s, String scope) throws ParseExceptionParses "SET <NAME> = VALUE" or "RESET <NAME>", without a leading "ALTER <SCOPE>".- Throws:
ParseException
-
SqlAlter
public final org.apache.calcite.sql.SqlAlter SqlAlter() throws ParseExceptionParses an expression for setting or resetting an option in SQL, such as QUOTED_IDENTIFIERS, or explain plan level (physical/logical).- Throws:
ParseException
-
Scope
public final String Scope() throws ParseException
- Throws:
ParseException
-
Literal
public final org.apache.calcite.sql.SqlNode Literal() throws ParseExceptionParses a literal expression, allowing continued string literals. Usually returns an SqlLiteral, but a continued string literal is an SqlCall expression, which concatenates 2 or more string literals; the validator reduces this.If the context allows both literals and expressions, use
LiteralOrIntervalExpression(), which requires less lookahead.- Throws:
ParseException
-
NonIntervalLiteral
public final org.apache.calcite.sql.SqlNode NonIntervalLiteral() throws ParseExceptionParses a literal that is not an interval literal.- Throws:
ParseException
-
LiteralOrIntervalExpression
public final org.apache.calcite.sql.SqlNode LiteralOrIntervalExpression() throws ParseExceptionParses a literal or an interval expression.We include them in the same production because it is difficult to distinguish interval literals from interval expression (both of which start with the
INTERVALkeyword); this way, we can use less LOOKAHEAD.- Throws:
ParseException
-
UnsignedNumericLiteral
public final org.apache.calcite.sql.SqlNumericLiteral UnsignedNumericLiteral() throws ParseExceptionParses a unsigned numeric literal- Throws:
ParseException
-
NumericLiteral
public final org.apache.calcite.sql.SqlLiteral NumericLiteral() throws ParseExceptionParses a numeric literal (can be signed)- Throws:
ParseException
-
SpecialLiteral
public final org.apache.calcite.sql.SqlLiteral SpecialLiteral() throws ParseExceptionParse a special literal keyword- Throws:
ParseException
-
StringLiteral
public final org.apache.calcite.sql.SqlNode StringLiteral() throws ParseExceptionParses a string literal. The literal may be continued onto several lines. For a simple literal, the result is an SqlLiteral. For a continued literal, the result is an SqlCall expression, which concatenates 2 or more string literals; the validator reduces this.- Returns:
- a literal expression
- Throws:
ParseException- See Also:
SqlLiteral.unchain(SqlNode),SqlLiteral.stringValue(SqlNode)
-
DateTimeLiteral
public final org.apache.calcite.sql.SqlLiteral DateTimeLiteral() throws ParseExceptionParses a date/time literal.- Throws:
ParseException
-
MultisetConstructor
public final org.apache.calcite.sql.SqlNode MultisetConstructor() throws ParseExceptionParses a MULTISET constructor- Throws:
ParseException
-
ArrayConstructor
public final org.apache.calcite.sql.SqlNode ArrayConstructor() throws ParseExceptionParses an ARRAY constructor- Throws:
ParseException
-
MapConstructor
public final org.apache.calcite.sql.SqlNode MapConstructor() throws ParseExceptionParses a MAP constructor- Throws:
ParseException
-
PeriodConstructor
public final org.apache.calcite.sql.SqlNode PeriodConstructor() throws ParseExceptionParses a PERIOD constructor- Throws:
ParseException
-
IntervalLiteral
public final org.apache.calcite.sql.SqlLiteral IntervalLiteral() throws ParseExceptionParses an interval literal.- Throws:
ParseException
-
IntervalLiteralOrExpression
public final org.apache.calcite.sql.SqlNode IntervalLiteralOrExpression() throws ParseExceptionParses an interval literal (e.g.INTERVAL '2:3' HOUR TO MINUTE) or an interval expression (e.g.INTERVAL emp.empno MINUTEorINTERVAL 3 MONTHS).- Throws:
ParseException
-
Year
public final org.apache.calcite.avatica.util.TimeUnit Year() throws ParseException- Throws:
ParseException
-
Month
public final org.apache.calcite.avatica.util.TimeUnit Month() throws ParseException- Throws:
ParseException
-
Day
public final org.apache.calcite.avatica.util.TimeUnit Day() throws ParseException- Throws:
ParseException
-
Hour
public final org.apache.calcite.avatica.util.TimeUnit Hour() throws ParseException- Throws:
ParseException
-
Minute
public final org.apache.calcite.avatica.util.TimeUnit Minute() throws ParseException- Throws:
ParseException
-
Second
public final org.apache.calcite.avatica.util.TimeUnit Second() throws ParseException- Throws:
ParseException
-
IntervalQualifier
public final org.apache.calcite.sql.SqlIntervalQualifier IntervalQualifier() throws ParseException- Throws:
ParseException
-
IntervalQualifierStart
public final org.apache.calcite.sql.SqlIntervalQualifier IntervalQualifierStart() throws ParseExceptionInterval qualifier without 'TO unit'.- Throws:
ParseException
-
TimeUnit
public final org.apache.calcite.avatica.util.TimeUnit TimeUnit() throws ParseExceptionParses time unit for EXTRACT, CEIL and FLOOR functions. Note that it does't include NANOSECOND and MICROSECOND.- Throws:
ParseException
-
TimestampInterval
public final org.apache.calcite.avatica.util.TimeUnit TimestampInterval() throws ParseException- Throws:
ParseException
-
DynamicParam
public final org.apache.calcite.sql.SqlDynamicParam DynamicParam() throws ParseExceptionParses a dynamic parameter marker.- Throws:
ParseException
-
IdentifierSegment
public final void IdentifierSegment(List<String> names, List<org.apache.calcite.sql.parser.SqlParserPos> positions) throws ParseException
Parses one segment of an identifier that may be composite.Each time it reads an identifier it writes one element to each list; the entry in
positionsrecords its position and whether the segment was quoted.- Throws:
ParseException
-
TableIdentifierSegment
public final void TableIdentifierSegment(List<String> names, List<org.apache.calcite.sql.parser.SqlParserPos> positions) throws ParseException
AsIdentifierSegment(java.util.List<java.lang.String>, java.util.List<org.apache.calcite.sql.parser.SqlParserPos>)but part of a table name (for example, followingFROM,INSERTorUPDATE).In some dialects the lexical rules for table names are different from for other identifiers. For example, in BigQuery, table names may contain hyphens.
- Throws:
ParseException
-
Identifier
public final String Identifier() throws ParseException
Parses a simple identifier as a String.- Throws:
ParseException
-
SimpleIdentifier
public final org.apache.calcite.sql.SqlIdentifier SimpleIdentifier() throws ParseExceptionParses a simple identifier as an SqlIdentifier.- Throws:
ParseException
-
SimpleIdentifierFromStringLiteral
public final org.apache.calcite.sql.SqlIdentifier SimpleIdentifierFromStringLiteral() throws ParseExceptionParses a character literal as an SqlIdentifier. Only valid for column aliases in certain dialects.- Throws:
ParseException
-
SimpleIdentifierCommaList
public final void SimpleIdentifierCommaList(List<org.apache.calcite.sql.SqlNode> list) throws ParseException
Parses a comma-separated list of simple identifiers.- Throws:
ParseException
-
ParenthesizedSimpleIdentifierList
public final org.apache.calcite.sql.SqlNodeList ParenthesizedSimpleIdentifierList() throws ParseExceptionList of simple identifiers in parentheses. The position extends from the open parenthesis to the close parenthesis.- Throws:
ParseException
-
SimpleIdentifierOrList
public final org.apache.calcite.sql.SqlNodeList SimpleIdentifierOrList() throws ParseExceptionList of simple identifiers in parentheses or one simple identifier.- Examples:
DEPTNO(EMPNO, DEPTNO)
- Throws:
ParseException
-
CompoundIdentifier
public final org.apache.calcite.sql.SqlIdentifier CompoundIdentifier() throws ParseExceptionParses a compound identifier.- Throws:
ParseException
-
CompoundTableIdentifier
public final org.apache.calcite.sql.SqlIdentifier CompoundTableIdentifier() throws ParseExceptionParses a compound identifier in the FROM clause.- Throws:
ParseException
-
CompoundIdentifierTypeCommaList
public final void CompoundIdentifierTypeCommaList(List<org.apache.calcite.sql.SqlNode> list, List<org.apache.calcite.sql.SqlNode> extendList) throws ParseException
Parses a comma-separated list of compound identifiers.- Throws:
ParseException
-
ParenthesizedCompoundIdentifierList
public final org.apache.calcite.util.Pair<org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlNodeList> ParenthesizedCompoundIdentifierList() throws ParseExceptionList of compound identifiers in parentheses. The position extends from the open parenthesis to the close parenthesis.- Throws:
ParseException
-
NewSpecification
public final org.apache.calcite.sql.SqlNode NewSpecification() throws ParseExceptionParses a NEW UDT(...) expression.- Throws:
ParseException
-
UnsignedIntLiteral
public final int UnsignedIntLiteral() throws ParseException- Throws:
ParseException
-
IntLiteral
public final int IntLiteral() throws ParseException- Throws:
ParseException
-
DataType
public final org.apache.calcite.sql.SqlDataTypeSpec DataType() throws ParseException- Throws:
ParseException
-
TypeName
public final org.apache.calcite.sql.SqlTypeNameSpec TypeName() throws ParseException- Throws:
ParseException
-
SqlTypeName
public final org.apache.calcite.sql.SqlTypeNameSpec SqlTypeName(org.apache.calcite.sql.parser.Span s) throws ParseException- Throws:
ParseException
-
SqlTypeName1
public final org.apache.calcite.sql.SqlTypeNameSpec SqlTypeName1(org.apache.calcite.sql.parser.Span s) throws ParseException- Throws:
ParseException
-
SqlTypeName2
public final org.apache.calcite.sql.SqlTypeNameSpec SqlTypeName2(org.apache.calcite.sql.parser.Span s) throws ParseException- Throws:
ParseException
-
SqlTypeName3
public final org.apache.calcite.sql.SqlTypeNameSpec SqlTypeName3(org.apache.calcite.sql.parser.Span s) throws ParseException- Throws:
ParseException
-
JdbcOdbcDataTypeName
public final org.apache.calcite.sql.SqlJdbcDataTypeName JdbcOdbcDataTypeName() throws ParseException- Throws:
ParseException
-
JdbcOdbcDataType
public final org.apache.calcite.sql.SqlLiteral JdbcOdbcDataType() throws ParseException- Throws:
ParseException
-
CollectionsTypeName
public final org.apache.calcite.sql.SqlTypeNameSpec CollectionsTypeName(org.apache.calcite.sql.SqlTypeNameSpec elementTypeName) throws ParseExceptionParse a collection type name, the input element type name may also be a collection type.- Throws:
ParseException
-
NullableOptDefaultTrue
public final boolean NullableOptDefaultTrue() throws ParseExceptionParse a nullable option, default is true.- Throws:
ParseException
-
NullableOptDefaultFalse
public final boolean NullableOptDefaultFalse() throws ParseExceptionParse a nullable option, default is false.- Throws:
ParseException
-
FieldNameTypeCommaList
public final void FieldNameTypeCommaList(List<org.apache.calcite.sql.SqlIdentifier> fieldNames, List<org.apache.calcite.sql.SqlDataTypeSpec> fieldTypes) throws ParseException
Parse a "name1 type1 [NULL | NOT NULL], name2 type2 [NULL | NOT NULL] ..." list, the field type default is not nullable.- Throws:
ParseException
-
RowTypeName
public final org.apache.calcite.sql.SqlTypeNameSpec RowTypeName() throws ParseExceptionParse Row type with format: Row(name1 type1, name2 type2). Every field type can have suffix of `NULL` or `NOT NULL` to indicate if this type is nullable. i.e. Row(f0 int not null, f1 varchar null).- Throws:
ParseException
-
CharacterTypeName
public final org.apache.calcite.sql.SqlTypeNameSpec CharacterTypeName(org.apache.calcite.sql.parser.Span s) throws ParseExceptionParse character types: char, varchar.- Throws:
ParseException
-
DateTimeTypeName
public final org.apache.calcite.sql.SqlTypeNameSpec DateTimeTypeName() throws ParseExceptionParse datetime types: date, time, timestamp.- Throws:
ParseException
-
PrecisionOpt
public final int PrecisionOpt() throws ParseException- Throws:
ParseException
-
TimeZoneOpt
public final boolean TimeZoneOpt() throws ParseExceptionParse a time zone suffix for DateTime types. According to SQL-2011, "with time zone" and "without time zone" belong to standard SQL but we only implement the "without time zone".We also support "with local time zone".
- Returns:
- true if this is "with local time zone".
- Throws:
ParseException
-
CursorExpression
public final org.apache.calcite.sql.SqlNode CursorExpression(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseExceptionParses a CURSOR(query) expression. The parser allows these anywhere, but the validator restricts them to appear only as arguments to table functions.- Throws:
ParseException
-
BuiltinFunctionCall
public final org.apache.calcite.sql.SqlNode BuiltinFunctionCall() throws ParseExceptionParses a call to a builtin function with special syntax.- Throws:
ParseException
-
JsonRepresentation
public final org.apache.calcite.sql.SqlJsonEncoding JsonRepresentation() throws ParseException- Throws:
ParseException
-
JsonInputClause
public final void JsonInputClause() throws ParseException- Throws:
ParseException
-
JsonReturningClause
public final org.apache.calcite.sql.SqlDataTypeSpec JsonReturningClause() throws ParseException- Throws:
ParseException
-
JsonOutputClause
public final org.apache.calcite.sql.SqlDataTypeSpec JsonOutputClause() throws ParseException- Throws:
ParseException
-
JsonPathSpec
public final org.apache.calcite.sql.SqlNode JsonPathSpec() throws ParseException- Throws:
ParseException
-
JsonApiCommonSyntax
public final List<org.apache.calcite.sql.SqlNode> JsonApiCommonSyntax() throws ParseException
- Throws:
ParseException
-
JsonExistsErrorBehavior
public final org.apache.calcite.sql.SqlJsonExistsErrorBehavior JsonExistsErrorBehavior() throws ParseException- Throws:
ParseException
-
JsonExistsFunctionCall
public final org.apache.calcite.sql.SqlCall JsonExistsFunctionCall() throws ParseException- Throws:
ParseException
-
JsonValueEmptyOrErrorBehavior
public final List<org.apache.calcite.sql.SqlNode> JsonValueEmptyOrErrorBehavior() throws ParseException
- Throws:
ParseException
-
JsonValueFunctionCall
public final org.apache.calcite.sql.SqlCall JsonValueFunctionCall() throws ParseException- Throws:
ParseException
-
JsonQueryEmptyOrErrorBehavior
public final List<org.apache.calcite.sql.SqlNode> JsonQueryEmptyOrErrorBehavior() throws ParseException
- Throws:
ParseException
-
JsonQueryWrapperBehavior
public final org.apache.calcite.sql.SqlNode JsonQueryWrapperBehavior() throws ParseException- Throws:
ParseException
-
JsonQueryFunctionCall
public final org.apache.calcite.sql.SqlCall JsonQueryFunctionCall() throws ParseException- Throws:
ParseException
-
JsonName
public final org.apache.calcite.sql.SqlNode JsonName() throws ParseException- Throws:
ParseException
-
JsonNameAndValue
public final List<org.apache.calcite.sql.SqlNode> JsonNameAndValue() throws ParseException
- Throws:
ParseException
-
JsonConstructorNullClause
public final org.apache.calcite.sql.SqlNode JsonConstructorNullClause() throws ParseException- Throws:
ParseException
-
JsonObjectFunctionCall
public final org.apache.calcite.sql.SqlCall JsonObjectFunctionCall() throws ParseException- Throws:
ParseException
-
JsonObjectAggFunctionCall
public final org.apache.calcite.sql.SqlCall JsonObjectAggFunctionCall() throws ParseException- Throws:
ParseException
-
JsonArrayFunctionCall
public final org.apache.calcite.sql.SqlCall JsonArrayFunctionCall() throws ParseException- Throws:
ParseException
-
JsonArrayAggOrderByClause
public final org.apache.calcite.sql.SqlNodeList JsonArrayAggOrderByClause() throws ParseException- Throws:
ParseException
-
JsonArrayAggFunctionCall
public final org.apache.calcite.sql.SqlCall JsonArrayAggFunctionCall() throws ParseException- Throws:
ParseException
-
TimestampAddFunctionCall
public final org.apache.calcite.sql.SqlCall TimestampAddFunctionCall() throws ParseExceptionParses a call to TIMESTAMPADD.- Throws:
ParseException
-
TimestampDiffFunctionCall
public final org.apache.calcite.sql.SqlCall TimestampDiffFunctionCall() throws ParseExceptionParses a call to TIMESTAMPDIFF.- Throws:
ParseException
-
GroupByWindowingCall
public final org.apache.calcite.sql.SqlCall GroupByWindowingCall() throws ParseExceptionParses a call to a grouping function inside the GROUP BY clause, for exampleTUMBLE(rowtime, INTERVAL '1' MINUTE).- Throws:
ParseException
-
MatchRecognizeFunctionCall
public final org.apache.calcite.sql.SqlCall MatchRecognizeFunctionCall() throws ParseException- Throws:
ParseException
-
MatchRecognizeCallWithModifier
public final org.apache.calcite.sql.SqlCall MatchRecognizeCallWithModifier() throws ParseException- Throws:
ParseException
-
MatchRecognizeNavigationLogical
public final org.apache.calcite.sql.SqlCall MatchRecognizeNavigationLogical() throws ParseException- Throws:
ParseException
-
MatchRecognizeNavigationPhysical
public final org.apache.calcite.sql.SqlCall MatchRecognizeNavigationPhysical() throws ParseException- Throws:
ParseException
-
withinDistinct
public final org.apache.calcite.sql.SqlCall withinDistinct(org.apache.calcite.sql.SqlNode arg) throws ParseException- Throws:
ParseException
-
withinGroup
public final org.apache.calcite.sql.SqlCall withinGroup(org.apache.calcite.sql.SqlNode arg) throws ParseException- Throws:
ParseException
-
NullTreatment
public final org.apache.calcite.util.Pair<org.apache.calcite.sql.parser.SqlParserPos,org.apache.calcite.sql.SqlOperator> NullTreatment() throws ParseException- Throws:
ParseException
-
nullTreatment
public final org.apache.calcite.sql.SqlCall nullTreatment(org.apache.calcite.sql.SqlCall arg) throws ParseException- Throws:
ParseException
-
NamedFunctionCall
public final org.apache.calcite.sql.SqlNode NamedFunctionCall() throws ParseExceptionParses a call to a named function (could be a builtin with regular syntax, or else a UDF).NOTE: every UDF has two names: an invocation name and a specific name. Normally, function calls are resolved via overload resolution and invocation names. The SPECIFIC prefix allows overload resolution to be bypassed. Note that usage of the SPECIFIC prefix in queries is non-standard; it is used internally by Farrago, e.g. in stored view definitions to permanently bind references to a particular function after the overload resolution performed by view creation.
TODO jvs 25-Mar-2005: Once we have SQL-Flagger support, flag SPECIFIC as non-standard.
- Throws:
ParseException
-
NamedCall
public final org.apache.calcite.sql.SqlCall NamedCall() throws ParseException- Throws:
ParseException
-
StandardFloorCeilOptions
public final org.apache.calcite.sql.SqlNode StandardFloorCeilOptions(org.apache.calcite.sql.parser.Span s, boolean floorFlag) throws ParseException- Throws:
ParseException
-
NonReservedJdbcFunctionName
public final String NonReservedJdbcFunctionName() throws ParseException
Parses the name of a JDBC function that is a token but is not reserved.- Throws:
ParseException
-
FunctionName
public final org.apache.calcite.sql.SqlIdentifier FunctionName() throws ParseExceptionParses the name of a function (either a compound identifier or a reserved word which can be used as a function name).- Throws:
ParseException
-
ReservedFunctionName
public final org.apache.calcite.sql.SqlIdentifier ReservedFunctionName() throws ParseExceptionParses a reserved word which is used as the name of a function.- Throws:
ParseException
-
ContextVariable
public final org.apache.calcite.sql.SqlIdentifier ContextVariable() throws ParseException- Throws:
ParseException
-
JdbcFunctionCall
public final org.apache.calcite.sql.SqlNode JdbcFunctionCall() throws ParseExceptionParses a function call expression with JDBC syntax.- Throws:
ParseException
-
BinaryQueryOperator
public final org.apache.calcite.sql.SqlBinaryOperator BinaryQueryOperator() throws ParseExceptionParses a binary query operator like UNION.- Throws:
ParseException
-
BinaryMultisetOperator
public final org.apache.calcite.sql.SqlBinaryOperator BinaryMultisetOperator() throws ParseExceptionParses a binary multiset operator.- Throws:
ParseException
-
BinaryRowOperator
public final org.apache.calcite.sql.SqlBinaryOperator BinaryRowOperator() throws ParseExceptionParses a binary row operator like AND.- Throws:
ParseException
-
PrefixRowOperator
public final org.apache.calcite.sql.SqlPrefixOperator PrefixRowOperator() throws ParseExceptionParses a prefix row operator like NOT.- Throws:
ParseException
-
PostfixRowOperator
public final org.apache.calcite.sql.SqlPostfixOperator PostfixRowOperator() throws ParseExceptionParses a postfix row operator like IS NOT NULL.- Throws:
ParseException
-
NonReservedKeyWord
public final String NonReservedKeyWord() throws ParseException
Parses a non-reserved keyword for use as an identifier.The method is broken up into several sub-methods; without this decomposition, parsers such as Babel with more than ~1,000 non-reserved keywords would generate such deeply nested 'if' statements that javac would fail with a
StackOverflowError.The list is generated from the FMPP config data. To add or remove keywords, modify config.fmpp. For parsers except Babel, make sure that keywords are not reserved by the SQL standard.
- Throws:
ParseException- See Also:
SQL:2003 Part 2 Section 5.2
-
NonReservedKeyWord0of3
public final void NonReservedKeyWord0of3() throws ParseException- Throws:
ParseException- See Also:
NonReservedKeyWord()
-
NonReservedKeyWord1of3
public final void NonReservedKeyWord1of3() throws ParseException- Throws:
ParseException- See Also:
NonReservedKeyWord()
-
NonReservedKeyWord2of3
public final void NonReservedKeyWord2of3() throws ParseException- Throws:
ParseException- See Also:
NonReservedKeyWord()
-
UnusedExtension
public final void UnusedExtension() throws ParseExceptionDefines a production which can never be accepted by the parser. In effect, it tells the parser, "If you got here, you've gone too far." It is used as the default production for parser extension points; derived parsers replace it with a real production when they want to implement a particular extension point.- Throws:
ParseException
-
ReInit
public void ReInit(InputStream stream)
Reinitialise.
-
ReInit
public void ReInit(InputStream stream, String encoding)
Reinitialise.
-
ReInit
public void ReInit(Reader stream)
Reinitialise.- Specified by:
ReInitin classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
ReInit
public void ReInit(SqlParserImplTokenManager tm)
Reinitialise.
-
getNextToken
public final Token getNextToken()
Get the next Token.
-
getToken
public final Token getToken(int index)
Get the specific Token.
-
generateParseException
public ParseException generateParseException()
Generate ParseException.
-
trace_enabled
public final boolean trace_enabled()
Trace enabled.
-
enable_tracing
public final void enable_tracing()
Enable tracing.
-
disable_tracing
public final void disable_tracing()
Disable tracing.
-
-