| # 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. |
| |
| data: { |
| # Data declarations for this parser. |
| # |
| # Default declarations are in default_config.fmpp; if you do not include a |
| # declaration ('imports' or 'nonReservedKeywords', for example) in this file, |
| # FMPP will use the declaration from default_config.fmpp. |
| parser: { |
| # Generated parser implementation class package and name |
| package: "org.apache.calcite.sql.parser.parserextensiontesting", |
| class: "ExtensionSqlParserImpl", |
| |
| # List of additional classes and packages to import. |
| # Example: "org.apache.calcite.sql.*", "java.util.List". |
| imports: [ |
| "org.apache.calcite.sql.SqlCreate", |
| "org.apache.calcite.sql.ddl.SqlDdlNodes", |
| "org.apache.calcite.sql.parser.parserextensiontesting.ExtensionSqlCreateTable", |
| "org.apache.calcite.sql.parser.parserextensiontesting.SqlUploadJarNode" |
| ] |
| |
| # List of new keywords. Example: "DATABASES", "TABLES". If the keyword is |
| # not a reserved keyword, add it to the 'nonReservedKeywords' section. |
| keywords: [ |
| "UPLOAD" |
| "JAR" |
| ] |
| |
| # List of methods for parsing custom SQL statements. |
| # Return type of method implementation should be 'SqlNode'. |
| # Example: "SqlShowDatabases()", "SqlShowTables()". |
| statementParserMethods: [ |
| "SqlDescribeSpacePower()" |
| ] |
| |
| # List of methods for parsing extensions to "ALTER <scope>" calls. |
| # Each must accept arguments "(SqlParserPos pos, String scope)". |
| # Example: "SqlAlterTable". |
| alterStatementParserMethods: [ |
| "SqlUploadJarNode" |
| ] |
| |
| # List of methods for parsing extensions to "CREATE [OR REPLACE]" calls. |
| # Each must accept arguments "(SqlParserPos pos, boolean replace)". |
| # Example: "SqlCreateForeignSchema". |
| createStatementParserMethods: [ |
| "SqlCreateTable" |
| "SqlCreateView" |
| ] |
| |
| # 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" |
| ] |
| includeDistinctOn: true |
| } |
| } |
| |
| freemarkerLinks: { |
| includes: includes/ |
| } |