blob: 6e93241af40ef29d0791e51b21c7471a710f2ba2 [file] [log] [blame]
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
{
# Generated parser implementation package and class name.
package: "org.apache.flink.sql.parser.impl",
class: "FlinkSqlParserImpl",
# List of additional classes and packages to import.
# Example. "org.apache.calcite.sql.*", "java.util.List".
# Please keep the import classes in alphabetical order if new class is added.
imports: [
"org.apache.flink.sql.parser.ddl.constraint.SqlConstraintEnforcement"
"org.apache.flink.sql.parser.ddl.constraint.SqlTableConstraint"
"org.apache.flink.sql.parser.ddl.constraint.SqlUniqueSpec"
"org.apache.flink.sql.parser.ddl.position.SqlColumnPosSpec"
"org.apache.flink.sql.parser.ddl.position.SqlTableColumnPosition"
"org.apache.flink.sql.parser.ddl.resource.SqlResource"
"org.apache.flink.sql.parser.ddl.resource.SqlResourceType"
"org.apache.flink.sql.parser.ddl.SqlAddJar"
"org.apache.flink.sql.parser.ddl.SqlAlterDistribution.SqlAddDistribution"
"org.apache.flink.sql.parser.ddl.SqlAlterDistribution.SqlModifyDistribution"
"org.apache.flink.sql.parser.ddl.SqlAddPartitions"
"org.apache.flink.sql.parser.ddl.SqlAddPartitions.AlterTableAddPartitionContext"
"org.apache.flink.sql.parser.ddl.SqlAlterCatalog"
"org.apache.flink.sql.parser.ddl.SqlAlterCatalogOptions"
"org.apache.flink.sql.parser.ddl.SqlAlterCatalogReset"
"org.apache.flink.sql.parser.ddl.SqlAlterCatalogComment"
"org.apache.flink.sql.parser.ddl.SqlAlterDatabase"
"org.apache.flink.sql.parser.ddl.SqlAlterFunction"
"org.apache.flink.sql.parser.ddl.SqlAlterMaterializedTable"
"org.apache.flink.sql.parser.ddl.SqlAlterMaterializedTableAddDistribution"
"org.apache.flink.sql.parser.ddl.SqlAlterMaterializedTableModifyDistribution"
"org.apache.flink.sql.parser.ddl.SqlAlterMaterializedTableDropDistribution"
"org.apache.flink.sql.parser.ddl.SqlAlterMaterializedTableAsQuery"
"org.apache.flink.sql.parser.ddl.SqlAlterMaterializedTableFreshness"
"org.apache.flink.sql.parser.ddl.SqlAlterMaterializedTableOptions"
"org.apache.flink.sql.parser.ddl.SqlAlterMaterializedTableRefreshMode"
"org.apache.flink.sql.parser.ddl.SqlAlterMaterializedTableReset"
"org.apache.flink.sql.parser.ddl.SqlAlterMaterializedTableRefresh"
"org.apache.flink.sql.parser.ddl.SqlAlterMaterializedTableResume"
"org.apache.flink.sql.parser.ddl.SqlAlterMaterializedTableSuspend"
"org.apache.flink.sql.parser.ddl.SqlAlterModel"
"org.apache.flink.sql.parser.ddl.SqlAlterModelRename"
"org.apache.flink.sql.parser.ddl.SqlAlterModelReset"
"org.apache.flink.sql.parser.ddl.SqlAlterModelSet"
"org.apache.flink.sql.parser.ddl.SqlAlterTable"
"org.apache.flink.sql.parser.ddl.TableSchemaContext"
"org.apache.flink.sql.parser.ddl.TableSchemaContext.AlterTableSchemaContext"
"org.apache.flink.sql.parser.ddl.SqlAlterTableAdd"
"org.apache.flink.sql.parser.ddl.SqlAlterTableDropColumn"
"org.apache.flink.sql.parser.ddl.SqlAlterTableDropConstraint"
"org.apache.flink.sql.parser.ddl.SqlAlterTableDropDistribution"
"org.apache.flink.sql.parser.ddl.SqlAlterTableDropPrimaryKey"
"org.apache.flink.sql.parser.ddl.SqlAlterTableDropWatermark"
"org.apache.flink.sql.parser.ddl.SqlAlterTableModify"
"org.apache.flink.sql.parser.ddl.SqlAlterTableOptions"
"org.apache.flink.sql.parser.ddl.SqlAlterTableRename"
"org.apache.flink.sql.parser.ddl.SqlAlterTableRenameColumn"
"org.apache.flink.sql.parser.ddl.SqlAlterTableReset"
"org.apache.flink.sql.parser.ddl.SqlAlterView"
"org.apache.flink.sql.parser.ddl.SqlAlterViewAs"
"org.apache.flink.sql.parser.ddl.SqlAlterViewRename"
"org.apache.flink.sql.parser.ddl.SqlCompilePlan"
"org.apache.flink.sql.parser.ddl.SqlCreateCatalog"
"org.apache.flink.sql.parser.ddl.SqlCreateDatabase"
"org.apache.flink.sql.parser.ddl.SqlCreateFunction"
"org.apache.flink.sql.parser.ddl.SqlCreateModel"
"org.apache.flink.sql.parser.ddl.SqlCreateModelAs"
"org.apache.flink.sql.parser.ddl.SqlCreateOrAlterMaterializedTable"
"org.apache.flink.sql.parser.ddl.SqlCreateTable"
"org.apache.flink.sql.parser.ddl.SqlCreateTableAs"
"org.apache.flink.sql.parser.ddl.SqlCreateTableLike"
"org.apache.flink.sql.parser.ddl.SqlCreateView"
"org.apache.flink.sql.parser.ddl.SqlDistribution"
"org.apache.flink.sql.parser.ddl.SqlDropCatalog"
"org.apache.flink.sql.parser.ddl.SqlDropDatabase"
"org.apache.flink.sql.parser.ddl.SqlDropFunction"
"org.apache.flink.sql.parser.ddl.SqlDropMaterializedTable"
"org.apache.flink.sql.parser.ddl.SqlDropModel"
"org.apache.flink.sql.parser.ddl.SqlDropPartitions"
"org.apache.flink.sql.parser.ddl.SqlDropPartitions.AlterTableDropPartitionsContext"
"org.apache.flink.sql.parser.ddl.SqlDropTable"
"org.apache.flink.sql.parser.ddl.SqlDropView"
"org.apache.flink.sql.parser.ddl.SqlRefreshMode"
"org.apache.flink.sql.parser.ddl.SqlRemoveJar"
"org.apache.flink.sql.parser.ddl.SqlReplaceTableAs"
"org.apache.flink.sql.parser.ddl.SqlReset"
"org.apache.flink.sql.parser.ddl.SqlSet"
"org.apache.flink.sql.parser.ddl.SqlTableColumn"
"org.apache.flink.sql.parser.ddl.SqlTableLike"
"org.apache.flink.sql.parser.ddl.SqlTableLike.FeatureOption"
"org.apache.flink.sql.parser.ddl.SqlTableLike.MergingStrategy"
"org.apache.flink.sql.parser.ddl.SqlTableLike.SqlTableLikeOption"
"org.apache.flink.sql.parser.ddl.SqlTableOption"
"org.apache.flink.sql.parser.ddl.SqlUseCatalog"
"org.apache.flink.sql.parser.ddl.SqlUseDatabase"
"org.apache.flink.sql.parser.ddl.SqlUseModules"
"org.apache.flink.sql.parser.ddl.SqlWatermark"
"org.apache.flink.sql.parser.ddl.SqlAnalyzeTable"
"org.apache.flink.sql.parser.dml.RichSqlInsert"
"org.apache.flink.sql.parser.dml.RichSqlInsertKeyword"
"org.apache.flink.sql.parser.dml.SqlBeginStatementSet"
"org.apache.flink.sql.parser.dml.SqlTruncateTable"
"org.apache.flink.sql.parser.dml.SqlCompileAndExecutePlan"
"org.apache.flink.sql.parser.dml.SqlEndStatementSet"
"org.apache.flink.sql.parser.dml.SqlExecute"
"org.apache.flink.sql.parser.dml.SqlExecutePlan"
"org.apache.flink.sql.parser.dml.SqlStatementSet"
"org.apache.flink.sql.parser.dql.SqlDescribeCatalog"
"org.apache.flink.sql.parser.dql.SqlDescribeDatabase"
"org.apache.flink.sql.parser.dql.SqlRichExplain"
"org.apache.flink.sql.parser.dql.SqlLoadModule"
"org.apache.flink.sql.parser.dql.SqlShowCatalogs"
"org.apache.flink.sql.parser.dql.SqlShowCurrentCatalog"
"org.apache.flink.sql.parser.dql.SqlShowDatabases"
"org.apache.flink.sql.parser.dql.SqlShowCurrentDatabase"
"org.apache.flink.sql.parser.dql.SqlShowFunctions"
"org.apache.flink.sql.parser.dql.SqlShowJars"
"org.apache.flink.sql.parser.dql.SqlShowModels"
"org.apache.flink.sql.parser.dql.SqlShowModules"
"org.apache.flink.sql.parser.dql.SqlShowPartitions"
"org.apache.flink.sql.parser.dql.SqlShowProcedures"
"org.apache.flink.sql.parser.dql.SqlShowTables"
"org.apache.flink.sql.parser.dql.SqlShowTables.SqlTableKind"
"org.apache.flink.sql.parser.dql.SqlShowColumns"
"org.apache.flink.sql.parser.dql.SqlShowCreate"
"org.apache.flink.sql.parser.dql.SqlShowCreateMaterializedTable"
"org.apache.flink.sql.parser.dql.SqlShowCreateModel"
"org.apache.flink.sql.parser.dql.SqlShowCreateTable"
"org.apache.flink.sql.parser.dql.SqlShowCreateView"
"org.apache.flink.sql.parser.dql.SqlShowCreateCatalog"
"org.apache.flink.sql.parser.dql.SqlRichDescribeFunction"
"org.apache.flink.sql.parser.dql.SqlRichDescribeModel"
"org.apache.flink.sql.parser.dql.SqlRichDescribeTable"
"org.apache.flink.sql.parser.dql.SqlUnloadModule"
"org.apache.flink.sql.parser.expr.SqlUnresolvedTryCastFunction"
"org.apache.flink.sql.parser.ddl.SqlStopJob"
"org.apache.flink.sql.parser.dql.SqlShowJobs"
"org.apache.flink.sql.parser.dql.SqlDescribeJob"
"org.apache.flink.sql.parser.type.ExtendedSqlCollectionTypeNameSpec"
"org.apache.flink.sql.parser.type.ExtendedSqlRowTypeNameSpec"
"org.apache.flink.sql.parser.type.SqlRawTypeNameSpec"
"org.apache.flink.sql.parser.type.SqlStructuredTypeNameSpec"
"org.apache.flink.sql.parser.type.SqlTimestampLtzTypeNameSpec"
"org.apache.flink.sql.parser.utils.ParserResource"
"org.apache.flink.sql.parser.validate.FlinkSqlConformance"
"org.apache.flink.sql.parser.SqlProperty"
"org.apache.flink.sql.parser.SqlPartitionSpecProperty"
"org.apache.calcite.sql.SqlAlienSystemTypeNameSpec"
"org.apache.calcite.sql.SqlCreate"
"org.apache.calcite.sql.SqlDrop"
"org.apache.calcite.sql.SqlExplicitModelOperator"
"org.apache.calcite.sql.SqlIntervalLiteral"
"java.util.ArrayList"
"java.util.Collections"
"java.util.HashSet"
"java.util.List"
"java.util.Set"
]
# List of new keywords. Example: "DATABASES", "TABLES". If the keyword is not a reserved
# keyword, please also add it to 'nonReservedKeywords' section.
# Please keep the keyword in alphabetical order if new keyword is added.
keywords: [
"ANALYZE"
"BUCKETS"
"BYTES"
"CATALOGS"
"CHANGELOG_MODE"
"COLUMNS"
"COMMENT"
"COMPILE"
"COMPUTE"
"CONTINUOUS"
"DATABASES"
"DISTRIBUTED"
"DISTRIBUTION"
"DRAIN"
"ENFORCED"
"ESTIMATED_COST"
"EXTENDED"
"FUNCTIONS"
"FRESHNESS"
"HASH"
"IF"
"JSON_EXECUTION_PLAN"
"JAR"
"JARS"
"JOB"
"JOBS"
"LOAD"
"METADATA"
"MODEL"
"MODELS"
"MATERIALIZED"
"MODIFY"
"MODULES"
"OVERWRITE"
"OVERWRITING"
"PARTITIONED"
"PARTITIONS"
"PLAN_ADVICE"
"PROCEDURES"
"PYTHON"
"RAW"
"REFRESH_MODE"
"REMOVE"
"RENAME"
"SCALA"
"STATISTICS"
"STOP"
"STRING"
"STRUCTURED"
"SUSPEND"
"REFRESH"
"RESUME"
"TABLES"
"TIMESTAMP_LTZ"
"UNLOAD"
"USE"
"VIEWS"
"VIRTUAL"
"WATERMARK"
"WATERMARKS"
]
# List of keywords from "keywords" section that are not reserved.
nonReservedKeywords: [
"A"
"ABSENT"
"ABSOLUTE"
"ACTION"
"ADA"
"ADD"
"ADMIN"
"AFTER"
"ALWAYS"
"APPLY"
"ARRAY_AGG"
"ASC"
"ASSERTION"
"ASSIGNMENT"
"ATTRIBUTE"
"ATTRIBUTES"
"BEFORE"
"BERNOULLI"
"BREADTH"
"C"
"CASCADE"
"CATALOG"
"CATALOG_NAME"
"CENTURY"
"CHAIN"
"CHARACTERISTICS"
"CHARACTERS"
"CHARACTER_SET_CATALOG"
"CHARACTER_SET_NAME"
"CHARACTER_SET_SCHEMA"
"CLASS_ORIGIN"
"COBOL"
"COLLATION"
"COLLATION_CATALOG"
"COLLATION_NAME"
"COLLATION_SCHEMA"
"COLUMN_NAME"
"COMMAND_FUNCTION"
"COMMAND_FUNCTION_CODE"
"COMMITTED"
"COMPILE"
"CONDITIONAL"
"CONDITION_NUMBER"
"CONNECTION"
"CONNECTION_NAME"
"CONSTRAINT_CATALOG"
"CONSTRAINT_NAME"
"CONSTRAINTS"
"CONSTRAINT_SCHEMA"
"CONSTRUCTOR"
"CONTINUE"
"CURSOR_NAME"
"DATA"
"DATABASE"
"DATE_DIFF"
"DATETIME_DIFF"
"DATETIME_INTERVAL_CODE"
"DATETIME_INTERVAL_PRECISION"
"DAYOFWEEK"
"DAYOFYEAR"
"DAYS"
"DECADE"
"DEFAULTS"
"DEFERRABLE"
"DEFERRED"
"DEFINED"
"DEFINER"
"DEGREE"
"DEPTH"
"DERIVED"
"DESC"
"DESCRIPTION"
"DESCRIPTOR"
"DIAGNOSTICS"
"DISPATCH"
"DOMAIN"
"DOW"
"DOY"
"DRAIN"
"DYNAMIC_FUNCTION"
"DYNAMIC_FUNCTION_CODE"
"ENCODING"
"EPOCH"
"ERROR"
"EXCEPTION"
"EXCLUDE"
"EXCLUDING"
"FINAL"
"FIRST"
"FOLLOWING"
"FORMAT"
"FORTRAN"
"FOUND"
"FRAC_SECOND"
"G"
"GENERAL"
"GENERATED"
"GEOMETRY"
"GO"
"GOTO"
"GRANTED"
"HIERARCHY"
"HOP"
"HOURS"
"IGNORE"
"IMMEDIATE"
"IMMEDIATELY"
"IMPLEMENTATION"
"INCLUDING"
"INCREMENT"
"INITIALLY"
"INPUT"
"INSTANCE"
"INSTANTIABLE"
"INVOKER"
"ISODOW"
"ISOLATION"
"ISOYEAR"
"JAR"
"JARS"
"JAVA"
"JOB"
"JOBS"
"JSON"
"K"
"KEY"
"KEY_MEMBER"
"KEY_TYPE"
"LABEL"
"LAST"
"LENGTH"
"LEVEL"
"LIBRARY"
"LOAD"
"LOCATOR"
"M"
"MAP"
"MATCHED"
"MAXVALUE"
"MESSAGE_LENGTH"
"MESSAGE_OCTET_LENGTH"
"MESSAGE_TEXT"
"MICROSECOND"
"MILLENNIUM"
"MILLISECOND"
"MINUTES"
"MINVALUE"
"MONTHS"
"MORE_"
"MUMPS"
"NAME"
"NAMES"
"NANOSECOND"
"NESTING"
"NORMALIZED"
"NULLABLE"
"NULLS"
"NUMBER"
"OBJECT"
"OCTETS"
"OPTION"
"OPTIONS"
"ORDERING"
"ORDINALITY"
"OTHERS"
"OUTPUT"
"OVERRIDING"
"PAD"
"PARAMETER_MODE"
"PARAMETER_NAME"
"PARAMETER_ORDINAL_POSITION"
"PARAMETER_SPECIFIC_CATALOG"
"PARAMETER_SPECIFIC_NAME"
"PARAMETER_SPECIFIC_SCHEMA"
"PARTIAL"
"PASCAL"
"PASSING"
"PASSTHROUGH"
"PAST"
"PATH"
"PLACING"
"PLAN"
"PLI"
"PRECEDING"
"PRESERVE"
"PRIOR"
"PRIVILEGES"
"PUBLIC"
"PYTHON"
"QUARTER"
"READ"
"RELATIVE"
"REMOVE"
"REPEATABLE"
"REPLACE"
"RESPECT"
"RESTART"
"RESTRICT"
"RETURNED_CARDINALITY"
"RETURNED_LENGTH"
"RETURNED_OCTET_LENGTH"
"RETURNED_SQLSTATE"
"RETURNING"
"ROLE"
"ROUTINE"
"ROUTINE_CATALOG"
"ROUTINE_NAME"
"ROUTINE_SCHEMA"
"ROW_COUNT"
"SCALAR"
"SCALE"
"SCHEMA"
"SCHEMA_NAME"
"SCOPE_CATALOGS"
"SCOPE_NAME"
"SCOPE_SCHEMA"
"SECONDS"
"SECTION"
"SECURITY"
"SELF"
"SEQUENCE"
"SERIALIZABLE"
"SERVER"
"SERVER_NAME"
"SESSION"
"SETS"
"SIMPLE"
"SIZE"
"SOURCE"
"SPACE"
"SPECIFIC_NAME"
"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"
"STATE"
"STOP"
"STRUCTURE"
"STYLE"
"SUBCLASS_ORIGIN"
"SUBSTITUTE"
"TABLE_NAME"
"TEMPORARY"
"TIES"
"TIMESTAMPADD"
"TIMESTAMPDIFF"
"TOP_LEVEL_COUNT"
"TRANSACTION"
"TRANSACTIONS_ACTIVE"
"TRANSACTIONS_COMMITTED"
"TRANSACTIONS_ROLLED_BACK"
"TRANSFORM"
"TRANSFORMS"
"TRIGGER_CATALOG"
"TRIGGER_NAME"
"TRIGGER_SCHEMA"
"TUMBLE"
"TYPE"
"UNBOUNDED"
"UNCOMMITTED"
"UNCONDITIONAL"
"UNDER"
"UNLOAD"
"UNNAMED"
"USAGE"
"USER_DEFINED_TYPE_CATALOG"
"USER_DEFINED_TYPE_CODE"
"USER_DEFINED_TYPE_NAME"
"USER_DEFINED_TYPE_SCHEMA"
"UTF16"
"UTF32"
"UTF8"
"VERSION"
"VIEW"
"WEEK"
"WORK"
"WRAPPER"
"WRITE"
"XML"
"YEARS"
"ZONE"
]
# List of non-reserved keywords to add;
# items in this list become non-reserved.
# Please keep the keyword in alphabetical order if new keyword is added.
nonReservedKeywordsToAdd: [
# not in core, added in Flink
"CHANGELOG_MODE"
"COLUMNS"
"ENFORCED"
"ESTIMATED_COST"
"IF"
"JSON_EXECUTION_PLAN"
"PLAN_ADVICE"
"METADATA"
"MODEL"
"OVERWRITE"
"OVERWRITING"
"PARTITIONED"
"PARTITIONS"
"VIRTUAL"
"ANALYZE"
"COMPUTE"
"STATISTICS"
]
# List of non-reserved keywords to remove;
# items in this list become reserved
nonReservedKeywordsToRemove: [
]
# List of methods for parsing custom SQL statements.
# Return type of method implementation should be 'SqlNode'.
# Example: SqlShowDatabases(), SqlShowTables().
# Note: move SqlRichDescribeTable at last, otherwise all DESCRIBE syntax will fall into this method
statementParserMethods: [
"RichSqlInsert()"
"SqlBeginStatementSet()"
"SqlEndStatementSet()"
"SqlLoadModule()"
"SqlShowCatalogs()"
"SqlShowCurrentCatalogOrDatabase()"
"SqlDescribeCatalog()"
"SqlUseCatalog()"
"SqlShowDatabases()"
"SqlUseDatabase()"
"SqlAlterCatalog()"
"SqlAlterDatabase()"
"SqlDescribeDatabase()"
"SqlAlterFunction()"
"SqlShowFunctions()"
"SqlShowModels()"
"SqlShowTables()"
"SqlShowColumns()"
"SqlShowCreate()"
"SqlReplaceTable()"
"SqlAlterMaterializedTable()"
"SqlAlterModel()"
"SqlAlterTable()"
"SqlAlterView()"
"SqlShowModules()"
"SqlShowPartitions()"
"SqlShowProcedures()"
"SqlUnloadModule()"
"SqlUseModules()"
"SqlRichExplain()"
"SqlCompileAndExecutePlan()"
"SqlCompilePlan()"
"SqlExecutePlan()"
"SqlExecute()"
"SqlAddJar()"
"SqlRemoveJar()"
"SqlShowJars()"
"SqlSet()"
"SqlReset()"
"SqlAnalyzeTable()"
"SqlStopJob()"
"SqlShowJobs()"
"SqlTruncateTable()"
"SqlDescribeJob()"
"SqlRichDescribeFunction()"
"SqlRichDescribeModel()"
"SqlRichDescribeTable()"
]
# List of methods for parsing custom literals.
# Return type of method implementation should be "SqlNode".
# Example: ParseJsonLiteral().
literalParserMethods: [
]
# List of methods for parsing ddl supported data types.
# Return type of method implementation should be "SqlTypeNameSpec".
# Example: SqlParseTimeStampZ().
dataTypeParserMethods: [
"ExtendedSqlBasicTypeName()"
"CustomizedCollectionsTypeName()"
"SqlMapTypeName()"
"SqlRawTypeName()"
"ExtendedSqlRowTypeName()"
"SqlStructuredTypeName()"
]
# List of methods for parsing builtin function calls.
# Return type of method implementation should be "SqlNode".
# Example: DateFunctionCall().
builtinFunctionCallMethods: [
"ExplicitModel()"
]
# List of methods for parsing extensions to "ALTER <scope>" calls.
# Each must accept arguments "(SqlParserPos pos, String scope)".
# Example: "SqlUploadJarNode"
alterStatementParserMethods: [
]
# List of methods for parsing extensions to "CREATE [OR REPLACE]" calls.
# Each must accept arguments "(SqlParserPos pos, boolean replace)".
createStatementParserMethods: [
"SqlCreateExtended"
]
# List of methods for parsing extensions to "DROP" calls.
# Each must accept arguments "(Span s)".
dropStatementParserMethods: [
"SqlDropExtended"
]
# List of methods for parsing extensions to "TRUNCATE" calls.
# Each must accept arguments "(SqlParserPos pos)".
# Example: "SqlTruncate".
truncateStatementParserMethods: [
]
# Binary operators tokens
binaryOperatorsTokens: [
]
# Binary operators initialization
extraBinaryExpressions: [
]
# List of files in @includes directory that have parser method
# implementations for parsing custom SQL statements, literals or types
# given as part of "statementParserMethods", "literalParserMethods" or
# "dataTypeParserMethods".
implementationFiles: [
"parserImpls.ftl"
]
# List of additional join types. Each is a method with no arguments.
# Example: LeftSemiJoin()
joinTypes: [
]
includePosixOperators: false
includeCompoundIdentifier: true
includeBraces: true
includeAdditionalDeclarations: false
includeParsingStringLiteralAsArrayLiteral: false
}