aboutsummaryrefslogtreecommitdiff
path: root/exec/java-exec/src/main/codegen/data/Parser.tdd
blob: 9da80af2b19afda262e52b51a2bd58c62cfdb9b0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# 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 class package and name
  package: "org.apache.drill.exec.planner.sql.parser.impl",
  class: "DrillParserImpl",

  # List of import statements.
  imports: [
    "org.apache.drill.exec.planner.sql.parser.*",
    "org.apache.calcite.util.*",
    "java.util.*"
  ]

  # List of keywords.
  keywords: [
    "DATABASES",
    "SCHEMAS",
    "TABLES",
    "USE",
    "FILES",
    "REFRESH",
    "METADATA",
    "IF",
    "JAR",
    "PROPERTIES"
  ]

  # List of methods for parsing custom SQL statements.
  statementParserMethods: [
    "SqlShowTables()",
    "SqlShowSchemas()",
    "SqlDescribeSchema()"
    "SqlDescribeTable()",
    "SqlUseSchema()",
    "SqlCreateOrReplace()"
    "SqlDrop()",
    "SqlShowFiles()",
    "SqlRefreshMetadata()",
    "SqlCreateFunction()",
    "SqlDropFunction()"
  ]

  # List of methods for parsing custom literals.
  # Example: ParseJsonLiteral().
  literalParserMethods: [
  ]

  # List of methods for parsing custom data types.
  dataTypeParserMethods: [
  ]

  # List of files in @includes directory that have parser method
  # implementations for custom SQL statements, literals or types
  # given as part of "statementParserMethods", "literalParserMethods" or
  # "dataTypeParserMethods".
  implementationFiles: [
    "parserImpls.ftl"
  ]

  # List of methods for parsing extensions to "CREATE [OR REPLACE]" calls.
  # Each must accept arguments "(SqlParserPos pos, boolean replace)".
  createStatementParserMethods: [
  ]

  # List of methods for parsing extensions to "ALTER <scope>" calls.
  # Each must accept arguments "(SqlParserPos pos, String scope)".
  alterStatementParserMethods: [
  ]

  # List of methods for parsing extensions to "DROP" calls.
  # Each must accept arguments "(SqlParserPos pos)".
  dropStatementParserMethods: [
  ]

  # List of keywords from "keywords" section that are not reserved.
  nonReservedKeywords: [
  ]

  # List of additional join types. Each is a method with no arguments.
  # Example: LeftSemiJoin()
  joinTypes: [
  ]
  
  includeCompoundIdentifier: false,
  includeBraces: true,
  includeAdditionalDeclarations: false,

  identifierMaxLength: 1024

}