@hamelin.sh/compiler 0.2.9 → 0.2.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. package/dist/iife.js +3878 -2907
  2. package/dist/main.d.ts +92 -2897
  3. package/dist/main.js +25446 -26107
  4. package/package.json +1 -1
package/dist/main.d.ts CHANGED
@@ -1,49 +1,14 @@
1
- import * as antlr from 'antlr4ng';
2
- import { AbstractParseTreeVisitor, Token, ParseTreeListener, TerminalNode, ErrorNode, ParserRuleContext } from 'antlr4ng';
3
-
4
1
  /* tslint:disable */
5
2
  /* eslint-disable */
6
- type CompileQueryResult = { Ok: QueryTranslation } | { Err: ContextualTranslationErrors };
7
-
8
3
  type QueryDatasetsResult = { Ok: string[] } | { Err: ContextualTranslationErrors };
9
4
 
10
- interface FunctionDescription {
11
- name: string;
12
- parameters: string;
13
- }
14
-
15
- interface ContextualTranslationErrors {
16
- hamelin: string;
17
- errors: ContextualTranslationError[];
18
- }
19
-
20
- type TranslationErrors = TranslationError[];
21
-
22
- interface Context {
23
- interval: { start: number; end: number };
24
- message: string;
25
- }
5
+ type CompileQueryResult = { Ok: QueryTranslation } | { Err: ContextualTranslationErrors };
26
6
 
27
- interface ContextualTranslationError {
28
- error: TranslationError;
7
+ interface ContextualCompletion {
29
8
  pretty: string;
9
+ completion: Completion;
30
10
  }
31
11
 
32
- interface TranslationError {
33
- area: LanguageArea | undefined;
34
- stage: Stage;
35
- level: Level;
36
- primary: Context;
37
- supporting: Context[] | undefined;
38
- source_desc: string | undefined;
39
- }
40
-
41
- type Stage = "Translation" | "Parsing" | "SemanticAnalysis";
42
-
43
- type LanguageArea = "FunctionCall" | "Operator" | "Deref" | "IndexAccess" | "Parsing";
44
-
45
- type Level = "Error" | "Warning" | "Info";
46
-
47
12
  interface ContextualResult {
48
13
  hamelin: string;
49
14
  errors: ContextualTranslationError[];
@@ -51,13 +16,6 @@ interface ContextualResult {
51
16
  translation: QueryTranslation | undefined;
52
17
  }
53
18
 
54
- interface ContextualCompletion {
55
- pretty: string;
56
- completion: Completion;
57
- }
58
-
59
- type CompletionItemKind = "Text" | "Variable" | "Function" | "Command" | "Keyword";
60
-
61
19
  interface CompletionItem {
62
20
  /**
63
21
  * What to show
@@ -86,26 +44,59 @@ interface CompletionItem {
86
44
  section: string | undefined;
87
45
  }
88
46
 
47
+ interface Translation {
48
+ sql: string;
49
+ columns: Column[];
50
+ }
51
+
52
+ interface QueryTranslation {
53
+ translation: Translation;
54
+ }
55
+
89
56
  interface Completion {
90
57
  at: { start: number; end: number };
91
58
  filter: boolean | undefined;
92
59
  items: CompletionItem[];
93
60
  }
94
61
 
95
- interface Translation {
96
- sql: string;
97
- columns: Column[];
62
+ type CompletionItemKind = "Text" | "Variable" | "Function" | "Command" | "Keyword";
63
+
64
+ interface Context {
65
+ interval: { start: number; end: number };
66
+ message: string;
98
67
  }
99
68
 
100
- interface DMLTranslation {
101
- translation: Translation;
69
+ type Stage = "Translation" | "Parsing" | "SemanticAnalysis";
70
+
71
+ type Level = "Error" | "Warning" | "Info";
72
+
73
+ interface ContextualTranslationErrors {
74
+ hamelin: string;
75
+ errors: ContextualTranslationError[];
102
76
  }
103
77
 
104
- interface QueryTranslation {
105
- translation: Translation;
78
+ interface ContextualTranslationError {
79
+ error: TranslationError;
80
+ pretty: string;
81
+ }
82
+
83
+ type LanguageArea = "FunctionCall" | "Operator" | "Deref" | "IndexAccess" | "Parsing";
84
+
85
+ interface TranslationError {
86
+ area: LanguageArea | undefined;
87
+ stage: Stage;
88
+ level: Level;
89
+ primary: Context;
90
+ supporting: Context[] | undefined;
91
+ source_desc: string | undefined;
92
+ }
93
+
94
+ interface FunctionDescription {
95
+ name: string;
96
+ parameters: string;
106
97
  }
107
98
 
108
- type StatementTranslation = { Query: QueryTranslation } | { DML: DMLTranslation };
99
+ type Catalog = Record<string, Column[]>;
109
100
 
110
101
  type HamelinType = "binary" | "boolean" | "interval" | "calendar_interval" | "int" | "double" | "rows" | "string" | "timestamp" | "unknown" | { decimal: { precision: number; scale: number } } | { array: { element_type: HamelinType } } | { map: { key_type: HamelinType; value_type: HamelinType } } | { tuple: { elements: HamelinType[] } } | "variant" | { range: { of: HamelinType } } | { struct: Column[] };
111
102
 
@@ -114,8 +105,6 @@ interface Column {
114
105
  type: HamelinType;
115
106
  }
116
107
 
117
- type Catalog = Record<string, Column[]>;
118
-
119
108
  declare class CatalogProvider {
120
109
  private constructor();
121
110
  free(): void;
@@ -125,2860 +114,66 @@ declare class CatalogProvider {
125
114
  declare class Compiler {
126
115
  free(): void;
127
116
  [Symbol.dispose](): void;
128
- constructor();
129
- get_function_descriptions(): FunctionDescription[];
130
- set_catalog_provider(provider: CatalogProvider): void;
131
- set_time_range(start?: Date | null, end?: Date | null): void;
132
- set_time_range_expression(expression: string): ContextualTranslationErrors | undefined;
133
117
  compile_query(query: string): CompileQueryResult;
118
+ set_time_range(start?: Date | null, end?: Date | null): void;
134
119
  compile_query_at(query: string, at?: number | null): ContextualResult;
120
+ set_catalog_provider(provider: CatalogProvider): void;
135
121
  get_statement_datasets(query: string): QueryDatasetsResult;
122
+ get_function_descriptions(): FunctionDescription[];
123
+ set_time_range_expression(expression: string): ContextualTranslationErrors | undefined;
124
+ constructor();
136
125
  }
137
126
 
138
- type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
127
+ declare const compileHamelin: (catalog: Catalog, hamelinInput: string, timeRange?: string) => Promise<CompileQueryResult>;
128
+ declare const createCompiler: (catalog: Catalog) => Promise<Compiler>;
139
129
 
140
- interface InitOutput {
141
- readonly memory: WebAssembly.Memory;
142
- readonly __wbg_catalogprovider_free: (a: number, b: number) => void;
143
- readonly catalogprovider_try_from_catalog: (a: any) => [number, number, number];
144
- readonly __wbg_compiler_free: (a: number, b: number) => void;
145
- readonly compiler_new: () => number;
146
- readonly compiler_get_function_descriptions: (a: number) => [number, number];
147
- readonly compiler_set_catalog_provider: (a: number, b: number) => void;
148
- readonly compiler_set_time_range: (a: number, b: number, c: number) => void;
149
- readonly compiler_set_time_range_expression: (a: number, b: number, c: number) => any;
150
- readonly compiler_compile_query: (a: number, b: number, c: number) => any;
151
- readonly compiler_compile_query_at: (a: number, b: number, c: number, d: number) => any;
152
- readonly compiler_get_statement_datasets: (a: number, b: number, c: number) => any;
153
- readonly __wbindgen_malloc: (a: number, b: number) => number;
154
- readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
155
- readonly __wbindgen_exn_store: (a: number) => void;
156
- readonly __externref_table_alloc: () => number;
157
- readonly __wbindgen_externrefs: WebAssembly.Table;
158
- readonly __externref_table_dealloc: (a: number) => void;
159
- readonly __externref_drop_slice: (a: number, b: number) => void;
160
- readonly __wbindgen_free: (a: number, b: number, c: number) => void;
161
- readonly __wbindgen_start: () => void;
162
- }
130
+ declare const hamelinGrammar = "grammar Hamelin;\n\nidentifierEOF\n : identifier EOF\n ;\n\nqueryEOF\n : query EOF\n ;\n\ncommandEOF\n : command EOF\n ;\n\nexpressionEOF\n : expression EOF\n ;\n\npipelineEOF\n : pipeline EOF\n ;\n\nsimpleIdentifierEOF\n : simpleIdentifier EOF\n ;\n\nquery\n : (WITH simpleIdentifier ASSIGN pipeline)+ pipeline #withQuery\n | pipeline #standaloneQuery\n | expression #expressionQuery\n ;\n\npipeline\n : command ( PIPE command )* #pipelineAlt\n ;\n\ncommand\n : LET_COMMAND assignment (COMMA assignment)* COMMA? #letCommand\n | WHERE_COMMAND expression #whereCommand\n | SELECT_COMMAND assignmentClause (COMMA assignmentClause)* COMMA? #selectCommand\n | DROP_COMMAND selection (COMMA selection)* COMMA? #dropCommand\n | FROM_COMMAND fromClause (COMMA fromClause)* COMMA? #fromCommand\n | UNION_COMMAND fromClause (COMMA fromClause)* COMMA? #unionCommand\n | LIMIT_COMMAND expression #limitCommand\n | PARSE_COMMAND src=expression? string\n AS? identifier (COMMA identifier)* COMMA? NODROP? #parseCommand\n | WITHIN_COMMAND expression #withinCommand\n | AGG_COMMAND (assignmentClause (COMMA assignmentClause)*)? COMMA?\n (BY groupClause (COMMA groupClause)*)? COMMA?\n (SORT BY? sortExpression (COMMA sortExpression)*)? COMMA? #aggCommand\n | SORT BY? sortExpression (COMMA sortExpression)* COMMA? #sortCommand\n | WINDOW_COMMAND assignmentClause (COMMA assignmentClause)* COMMA?\n (BY groupClause (COMMA groupClause)*)? COMMA?\n (SORT BY? sortExpression (COMMA sortExpression)*)? COMMA?\n (WITHIN_COMMAND within=expression)? #windowCommand\n | APPEND_COMMAND tableReference (DISTINCT_BY selection (COMMA selection)*)? COMMA? #appendCommand\n | (JOIN_COMMAND | LOOKUP_COMMAND) fromClause (ON on=expression)? #joinCommand\n | EXPLODE_COMMAND assignmentClause #explodeCommand\n | (UNNEST_COMMAND | ROWS_COMMAND) expression #unnestCommand\n | NEST_COMMAND identifier #nestCommand\n | MATCH_COMMAND pattern+\n (WHEN matchDefine (COMMA matchDefine)*)? COMMA?\n (BY groupClause (COMMA groupClause)*)? COMMA?\n (SORT BY? sortExpression (COMMA sortExpression)*)? COMMA? #matchCommand\n ;\n\nassignmentClause: assignment | expression;\ngroupClause: assignmentClause;\nassignment: identifier ASSIGN expression;\nmatchDefine: simpleIdentifier ASSIGN expression;\nselection: identifier;\nsortExpression: expression (ASC | DESC)?;\ntableAlias: simpleIdentifier ASSIGN tableReference;\nfromClause: tableAlias | tableReference;\n\nexpression\n // Keep this list in precedence order (important!)\n : operator=(MINUS | PLUS) expression #unaryPrefixOperator\n | expression (SECOND_TRUNC | MINUTE_TRUNC | HOUR_TRUNC | DAY_TRUNC | WEEK_TRUNC |\n MONTH_TRUNC | QUARTER_TRUNC | YEAR_TRUNC) #tsTrunc\n | left=expression operator=DOT right=simpleIdentifier #deref\n | value=expression LBRACKET index=expression RBRACKET #indexAccess\n | left=expression operator=(ASTERISK | SLASH | PERCENT) right=expression #binaryOperator\n | left=expression operator=(PLUS | MINUS) right=expression #binaryOperator\n | operator=RANGE expression #unaryPrefixOperator\n | expression operator=RANGE #unaryPostfixOperator\n | left=expression operator=RANGE right=expression #binaryOperator\n | left=expression operator=AS right=hamelintype #cast\n | left=expression\n operator=(EQ | NEQ | LT | LTE | GT | GTE | IS | ISNOT | IN | NOTIN)\n right=expression #binaryOperator\n | operator=NOT expression #unaryPrefixOperator\n | left=expression operator=AND right=expression #binaryOperator\n | left=expression operator=OR right=expression #binaryOperator\n\n // Complex Literals\n | left=expression operator=COLON right=expression #pairLiteral\n | LCURLY simpleIdentifier COLON expression\n (COMMA simpleIdentifier COLON expression)* COMMA? RCURLY #structLiteral\n | LPARENS ((expression COMMA) |\n (expression COMMA expression (COMMA expression)* COMMA?)) RPARENS #tupleLiteral\n | LBRACKET (expression (COMMA expression)* COMMA?)? RBRACKET #arrayLiteral\n\n // Function Calls\n | functionName=simpleIdentifier\n LPARENS (namedArgument (COMMA namedArgument)* COMMA?)? RPARENS #functionCall\n | functionName=simpleIdentifier LPARENS\n positionalArgument (COMMA positionalArgument)*\n (COMMA namedArgument)* COMMA? RPARENS #functionCall\n\n // Primitive Literals\n | NULL #nullLiteral\n | number #numericLiteral\n | TRUE #booleanLiteral\n | FALSE #booleanLiteral\n | string #stringLiteral\n | BINARY_LITERAL #binaryLiteral\n | RANGE #unboundRangeLiteral\n | (NANOSECOND_INTERVAL | MICROSECOND_INTERVAL | MILLISECOND_INTERVAL |\n SECOND_INTERVAL | MINUTE_INTERVAL | HOUR_INTERVAL | DAY_INTERVAL |\n WEEK_INTERVAL | MONTH_INTERVAL | QUARTER_INTERVAL | YEAR_INTERVAL) #intervalLiteral\n | ROWS_LITERAL #rowsLiteral\n | (SECOND_TRUNC | MINUTE_TRUNC | HOUR_TRUNC | DAY_TRUNC | WEEK_TRUNC |\n MONTH_TRUNC | QUARTER_TRUNC | YEAR_TRUNC) #tsTruncTimestampLiteral\n\n // Environment references\n | columnReference #columnReferenceAlt\n\n // Keep this at the bottom to use it the mechanism that query authors have to specify precedence.\n | LPARENS expression RPARENS #parenthesizedExpression\n ;\n\nhamelintype\n : simpleIdentifier LPARENS hamelintype (COMMA hamelintype)* COMMA? RPARENS #parameterizedType\n | simpleIdentifier LPARENS INTEGER_VALUE (COMMA INTEGER_VALUE)* COMMA? RPARENS #typeWithArguments\n | LCURLY simpleIdentifier COLON hamelintype\n (COMMA simpleIdentifier COLON hamelintype)* COMMA? RCURLY #structType\n | LPARENS hamelintype (COMMA hamelintype )* COMMA? RPARENS #tupleType\n | simpleIdentifier #simpleType\n ;\n\npattern\n : fromClause quantifier? #quantified\n | LPARENS pattern+ RPARENS quantifier #nested\n ;\n\nquantifier\n : ASTERISK #AnyNumber\n | PLUS #AtLeastOne\n | QUESTIONMARK #ZeroOrOne\n | LCURLY INTEGER_VALUE RCURLY #Exactly\n ;\n\ncolumnReference\n : simpleIdentifier\n ;\n\ntableReference\n : identifier\n ;\n\nidentifier\n : simpleIdentifier\n | simpleIdentifier (DOT simpleIdentifier)+\n ;\n\nsimpleIdentifier\n : IDENTIFIER #unquotedIdentifier\n | BACKQUOTED_IDENTIFIER #backQuotedIdentifier\n ;\n\nstring\n : SINGLE_QUOTED_STRING #basicSingleQuotedStringLiteral\n | DOUBLE_QUOTED_STRING #basicDoubleQuotedStringLiteral\n | value=SINGLE_QUOTED_UNICODE_STRING (UESCAPE uesc=SINGLE_QUOTED_STRING)? #unicodeSingleQuotedStringLiteral\n | value=DOUBLE_QUOTED_UNICODE_STRING (UESCAPE uesc=DOUBLE_QUOTED_STRING)? #unicodeDoubleQuotedStringLiteral\n ;\n\nnumber\n : value=DECIMAL_VALUE #decimalLiteral\n | value=DOUBLE_VALUE #scientificLiteral\n | value=INTEGER_VALUE #integerLiteral\n ;\n\npositionalArgument\n : expression\n ;\n\nnamedArgument\n : simpleIdentifier ASSIGN expression\n ;\n\n//\n// COMMANDS\n//\n\nLET_COMMAND: 'LET' | 'let';\nWHERE_COMMAND: 'WHERE' | 'where';\nSELECT_COMMAND: 'SELECT' | 'select';\nDROP_COMMAND: 'DROP' | 'drop';\nFROM_COMMAND: 'FROM' | 'from';\nUNION_COMMAND: 'UNION' | 'union';\nLIMIT_COMMAND: 'LIMIT' | 'limit';\nPARSE_COMMAND: 'PARSE' | 'parse';\nWITHIN_COMMAND: 'WITHIN' | 'within';\nAGG_COMMAND: 'AGG' | 'agg';\nWINDOW_COMMAND: 'WINDOW' | 'window';\nAPPEND_COMMAND: 'APPEND' | 'append';\nJOIN_COMMAND: 'JOIN' | 'join';\nLOOKUP_COMMAND: 'LOOKUP' | 'lookup';\nEXPLODE_COMMAND: 'EXPLODE' | 'explode';\nUNNEST_COMMAND: 'UNNEST' | 'unnest';\nNEST_COMMAND: 'NEST' | 'nest';\nROWS_COMMAND: 'ROWS' | 'rows';\nMATCH_COMMAND: 'MATCH' | 'match';\n\nAS: 'AS' | 'as';\nNODROP: 'NODROP' | 'nodrop';\n\n//\n// Operators\n//\n\nPLUS: '+';\nMINUS: '-';\nASTERISK: '*';\nSLASH: '/';\nPERCENT: '%';\nLCURLY: '{';\nRCURLY: '}';\nCOLON: ':';\nQUESTIONMARK: '?';\n\nEQ: '==';\nNEQ: '!=';\nLT: '<';\nLTE: '<=';\nGT: '>';\nGTE: '>=';\nRANGE: '..';\n\nASSIGN: '=';\n\n//\n// Keywords\n//\n\nAND: 'AND' | 'and';\nFALSE: 'FALSE' | 'false';\nIS: 'IS' | 'is';\nNOT: 'NOT' | 'not';\nISNOT: 'IS NOT' | 'is not';\nIN: 'IN' | 'in';\nNOTIN: 'NOT IN' | 'not in';\nNULL: 'NULL' | 'null';\nOR: 'OR' | 'or';\nTRUE: 'TRUE' | 'true';\nUESCAPE: 'UESCAPE' | 'uescape';\nWITH: 'WITH' | 'with';\nBY: 'BY' | 'by';\nSORT: 'SORT' | 'sort';\nASC: 'ASC' | 'asc';\nDESC: 'DESC' | 'desc';\nDISTINCT_BY: 'DISTINCT BY' | 'distinct by';\nON: 'ON' | 'on';\nWHEN: 'WHEN' | 'when';\n\n//\n// Symbols\n//\n\nCOMMA: ',';\nPIPE: '|';\nLPARENS: '(';\nRPARENS: ')';\nDOT: '.';\nLBRACKET: '[';\nRBRACKET: ']';\n\n//\n// Literals\n//\n\nSINGLE_QUOTED_STRING\n : '\\'' ( ~'\\'' | '\\'\\'')* '\\''\n ;\nDOUBLE_QUOTED_STRING\n : '\"' ( ~'\"' | '\"\"')* '\"'\n ;\n\nSINGLE_QUOTED_UNICODE_STRING\n : 'U&\\'' ( ~'\\'' | '\\'\\'')* '\\'' // Unicode string with default escape character: U&'Hello winter \\2603 !'\n ;\n\nDOUBLE_QUOTED_UNICODE_STRING\n : 'U&\"' ( ~'\"' | '\"\"')* '\"' // Unicode string with custom escape character: U&'Hello winter #2603 !' UESCAPE '#'\n ;\n\n// Note: we allow any character inside the binary literal and validate\n// its a correct literal when the AST is being constructed. This\n// allows us to provide more meaningful error messages to the user\nBINARY_LITERAL\n : 'x\\'' (~'\\'')* '\\''\n ;\n\nNANOSECOND_INTERVAL\n : DECIMAL_INTEGER 'ns'\n ;\n\nMICROSECOND_INTERVAL\n : DECIMAL_INTEGER 'us'\n ;\n\nMILLISECOND_INTERVAL\n : DECIMAL_INTEGER 'ms'\n ;\n\nSECOND_INTERVAL\n : DECIMAL_INTEGER ('s' | 'sec' | 'secs' | 'second' | 'seconds')\n ;\n\nMINUTE_INTERVAL\n : DECIMAL_INTEGER ('m' | 'min' | 'mins' | 'minute' | 'minutes')\n ;\n\nHOUR_INTERVAL\n : DECIMAL_INTEGER ('h' | 'hr' | 'hrs' | 'hour' | 'hours')\n ;\n\nDAY_INTERVAL\n : DECIMAL_INTEGER ('d' | 'day' | 'days')\n ;\n\nWEEK_INTERVAL\n : DECIMAL_INTEGER ('w' | 'week' | 'weeks')\n ;\n\nMONTH_INTERVAL\n : DECIMAL_INTEGER ('mon' | 'month' | 'months')\n ;\n\nQUARTER_INTERVAL\n : DECIMAL_INTEGER ('q' | 'qtr' | 'qtrs' | 'quarter' | 'quarters')\n ;\n\nYEAR_INTERVAL\n : DECIMAL_INTEGER ('y' | 'yr' | 'yrs' | 'year' | 'years')\n ;\n\nROWS_LITERAL\n : DECIMAL_INTEGER ('r' | 'row' | 'rows')\n ;\n\nSECOND_TRUNC\n : '@' ('s' | 'sec' | 'secs' | 'second' | 'seconds')\n ;\n\nMINUTE_TRUNC\n : '@' ('m' | 'min' | 'mins' | 'minute' | 'minutes')\n ;\n\nHOUR_TRUNC\n : '@' ('h' | 'hr' | 'hrs' | 'hour' | 'hours')\n ;\n\nDAY_TRUNC\n : '@' ('d' | 'day' | 'days')\n ;\n\nWEEK_TRUNC\n : '@' ('w' | 'week' | 'weeks')\n ;\n\nMONTH_TRUNC\n : '@' ('mon' | 'month' | 'months')\n ;\n\nQUARTER_TRUNC\n : '@' ('q' | 'qtr' | 'qtrs' | 'quarter' | 'quarters')\n ;\n\nYEAR_TRUNC\n : '@' ('y' | 'yr' | 'yrs' | 'year' | 'years')\n ;\n\nINTEGER_VALUE\n : DECIMAL_INTEGER\n | HEXADECIMAL_INTEGER\n | OCTAL_INTEGER\n | BINARY_INTEGER\n ;\n\nDECIMAL_VALUE\n : DECIMAL_INTEGER '.' DECIMAL_INTEGER\n | '.' DECIMAL_INTEGER\n ;\n\nDOUBLE_VALUE\n : DIGIT+ ('.' DIGIT*)? EXPONENT\n | '.' DIGIT+ EXPONENT\n ;\n\nIDENTIFIER\n : [a-zA-Z_][a-zA-Z_0-9]*\n ;\n\nBACKQUOTED_IDENTIFIER\n : '`' ( ~'`' | '``' )* '`'\n ;\n\nfragment DECIMAL_INTEGER\n : DIGIT ('_'? DIGIT)*\n ;\n\nfragment HEXADECIMAL_INTEGER\n : '0x' ('_'? (DIGIT | [A-F]))+\n ;\n\nfragment OCTAL_INTEGER\n : '0o' ('_'? [0-7])+\n ;\n\nfragment BINARY_INTEGER\n : '0b' ('_'? [01])+\n ;\n\nfragment EXPONENT\n : 'e' [+-]? DIGIT+\n ;\n\nfragment DIGIT\n : [0-9]\n ;\n\n//\n// Comments and whitespace\n//\n\nSIMPLE_COMMENT\n : '//' ~[\\r\\n]* '\\r'? '\\n'? -> channel(HIDDEN)\n ;\n\nBRACKETED_COMMENT\n : '/*' .*? '*/' -> channel(HIDDEN)\n ;\n\nWS\n : [ \\r\\n\\t]+ -> skip\n ;\n";
163
131
 
164
- type SyncInitInput = BufferSource | WebAssembly.Module;
132
+ type QuerySort = {
133
+ column: string;
134
+ direction: "asc" | "desc" | null;
135
+ };
165
136
  /**
166
- * Instantiates the given `module`, which can either be bytes or
167
- * a precompiled `WebAssembly.Module`.
168
- *
169
- * @param {{ module: SyncInitInput }} module - Passing `SyncInitInput` directly is deprecated.
170
- *
171
- * @returns {InitOutput}
172
- */
173
- declare function initSync(module: { module: SyncInitInput } | SyncInitInput): InitOutput;
137
+ * Returns the top level sorting information from the provided Hamelin query.
138
+ */
139
+ declare const getSorts: (hamelinQuery: string) => QuerySort[];
174
140
 
175
- declare const compileHamelin: (catalog: Catalog, hamelinInput: string, timeRange?: string) => Promise<CompileQueryResult>;
176
- declare const createCompiler: (catalog: Catalog) => Promise<Compiler>;
141
+ type QueryAggregation = {
142
+ columns: string[];
143
+ by: string[];
144
+ sort: QuerySort[];
145
+ };
146
+ declare const getAggregations: (query: string) => QueryAggregation[];
177
147
 
178
- declare class HamelinLexer extends antlr.Lexer {
179
- static readonly LET_COMMAND = 1;
180
- static readonly WHERE_COMMAND = 2;
181
- static readonly SELECT_COMMAND = 3;
182
- static readonly DROP_COMMAND = 4;
183
- static readonly FROM_COMMAND = 5;
184
- static readonly UNION_COMMAND = 6;
185
- static readonly LIMIT_COMMAND = 7;
186
- static readonly PARSE_COMMAND = 8;
187
- static readonly WITHIN_COMMAND = 9;
188
- static readonly AGG_COMMAND = 10;
189
- static readonly WINDOW_COMMAND = 11;
190
- static readonly APPEND_COMMAND = 12;
191
- static readonly JOIN_COMMAND = 13;
192
- static readonly LOOKUP_COMMAND = 14;
193
- static readonly EXPLODE_COMMAND = 15;
194
- static readonly UNNEST_COMMAND = 16;
195
- static readonly NEST_COMMAND = 17;
196
- static readonly ROWS_COMMAND = 18;
197
- static readonly MATCH_COMMAND = 19;
198
- static readonly AS = 20;
199
- static readonly NODROP = 21;
200
- static readonly PLUS = 22;
201
- static readonly MINUS = 23;
202
- static readonly ASTERISK = 24;
203
- static readonly SLASH = 25;
204
- static readonly PERCENT = 26;
205
- static readonly LCURLY = 27;
206
- static readonly RCURLY = 28;
207
- static readonly COLON = 29;
208
- static readonly QUESTIONMARK = 30;
209
- static readonly EQ = 31;
210
- static readonly NEQ = 32;
211
- static readonly LT = 33;
212
- static readonly LTE = 34;
213
- static readonly GT = 35;
214
- static readonly GTE = 36;
215
- static readonly RANGE = 37;
216
- static readonly ASSIGN = 38;
217
- static readonly AND = 39;
218
- static readonly FALSE = 40;
219
- static readonly IS = 41;
220
- static readonly NOT = 42;
221
- static readonly ISNOT = 43;
222
- static readonly IN = 44;
223
- static readonly NOTIN = 45;
224
- static readonly NULL = 46;
225
- static readonly OR = 47;
226
- static readonly TRUE = 48;
227
- static readonly UESCAPE = 49;
228
- static readonly WITH = 50;
229
- static readonly BY = 51;
230
- static readonly SORT = 52;
231
- static readonly ASC = 53;
232
- static readonly DESC = 54;
233
- static readonly DISTINCT_BY = 55;
234
- static readonly ON = 56;
235
- static readonly WHEN = 57;
236
- static readonly COMMA = 58;
237
- static readonly PIPE = 59;
238
- static readonly LPARENS = 60;
239
- static readonly RPARENS = 61;
240
- static readonly DOT = 62;
241
- static readonly LBRACKET = 63;
242
- static readonly RBRACKET = 64;
243
- static readonly SINGLE_QUOTED_STRING = 65;
244
- static readonly DOUBLE_QUOTED_STRING = 66;
245
- static readonly SINGLE_QUOTED_UNICODE_STRING = 67;
246
- static readonly DOUBLE_QUOTED_UNICODE_STRING = 68;
247
- static readonly BINARY_LITERAL = 69;
248
- static readonly NANOSECOND_INTERVAL = 70;
249
- static readonly MICROSECOND_INTERVAL = 71;
250
- static readonly MILLISECOND_INTERVAL = 72;
251
- static readonly SECOND_INTERVAL = 73;
252
- static readonly MINUTE_INTERVAL = 74;
253
- static readonly HOUR_INTERVAL = 75;
254
- static readonly DAY_INTERVAL = 76;
255
- static readonly WEEK_INTERVAL = 77;
256
- static readonly MONTH_INTERVAL = 78;
257
- static readonly QUARTER_INTERVAL = 79;
258
- static readonly YEAR_INTERVAL = 80;
259
- static readonly ROWS_LITERAL = 81;
260
- static readonly SECOND_TRUNC = 82;
261
- static readonly MINUTE_TRUNC = 83;
262
- static readonly HOUR_TRUNC = 84;
263
- static readonly DAY_TRUNC = 85;
264
- static readonly WEEK_TRUNC = 86;
265
- static readonly MONTH_TRUNC = 87;
266
- static readonly QUARTER_TRUNC = 88;
267
- static readonly YEAR_TRUNC = 89;
268
- static readonly INTEGER_VALUE = 90;
269
- static readonly DECIMAL_VALUE = 91;
270
- static readonly DOUBLE_VALUE = 92;
271
- static readonly IDENTIFIER = 93;
272
- static readonly BACKQUOTED_IDENTIFIER = 94;
273
- static readonly SIMPLE_COMMENT = 95;
274
- static readonly BRACKETED_COMMENT = 96;
275
- static readonly WS = 97;
276
- static readonly channelNames: string[];
277
- static readonly literalNames: (string | null)[];
278
- static readonly symbolicNames: (string | null)[];
279
- static readonly modeNames: string[];
280
- static readonly ruleNames: string[];
281
- constructor(input: antlr.CharStream);
282
- get grammarFileName(): string;
283
- get literalNames(): (string | null)[];
284
- get symbolicNames(): (string | null)[];
285
- get ruleNames(): string[];
286
- get serializedATN(): number[];
287
- get channelNames(): string[];
288
- get modeNames(): string[];
289
- static readonly _serializedATN: number[];
290
- private static __ATN;
291
- static get _ATN(): antlr.ATN;
292
- private static readonly vocabulary;
293
- get vocabulary(): antlr.Vocabulary;
294
- private static readonly decisionsToDFA;
295
- }
148
+ declare const getDatasetsFromQuery: (catalog: Catalog, hamelinInput: string) => Promise<QueryDatasetsResult>;
149
+
150
+ declare const getFunctionDescriptions: () => Promise<FunctionDescription[]>;
151
+
152
+ /**
153
+ * Returns the top level limit information from the provided Hamelin query.
154
+ */
155
+ declare const getLimits: (hamelinQuery: string) => number[];
156
+
157
+ type FieldNames = string[] | null;
158
+ declare const getSelectedFields: (query: string) => FieldNames;
159
+
160
+ declare function parseTokenValueClass(stream: {
161
+ string: string;
162
+ pos: number;
163
+ match: (text: string) => boolean | unknown[] | null;
164
+ }, functions: FunctionDescription[]): string | null;
165
+
166
+ declare const sampleCatalog: Catalog;
296
167
 
297
168
  /**
298
- * This interface defines a complete generic visitor for a parse tree produced
299
- * by `HamelinParser`.
169
+ * Invokes Antlr4-c3 to collect completion candidates for a given input string
170
+ * at a specific position.
300
171
  *
301
- * @param <Result> The return type of the visit operation. Use `void` for
302
- * operations with no return type.
172
+ * @param input The input string to analyze.
173
+ * @param pos Request completion at this index in the input string,
174
+ * @returns A collection of candidates or undefined if no candidates are found
175
+ * or the position is invalid.
303
176
  */
304
- declare class HamelinVisitor<Result> extends AbstractParseTreeVisitor<Result> {
305
- /**
306
- * Visit a parse tree produced by `HamelinParser.identifierEOF`.
307
- * @param ctx the parse tree
308
- * @return the visitor result
309
- */
310
- visitIdentifierEOF?: (ctx: IdentifierEOFContext) => Result;
311
- /**
312
- * Visit a parse tree produced by `HamelinParser.queryEOF`.
313
- * @param ctx the parse tree
314
- * @return the visitor result
315
- */
316
- visitQueryEOF?: (ctx: QueryEOFContext) => Result;
317
- /**
318
- * Visit a parse tree produced by `HamelinParser.commandEOF`.
319
- * @param ctx the parse tree
320
- * @return the visitor result
321
- */
322
- visitCommandEOF?: (ctx: CommandEOFContext) => Result;
323
- /**
324
- * Visit a parse tree produced by `HamelinParser.expressionEOF`.
325
- * @param ctx the parse tree
326
- * @return the visitor result
327
- */
328
- visitExpressionEOF?: (ctx: ExpressionEOFContext) => Result;
329
- /**
330
- * Visit a parse tree produced by `HamelinParser.pipelineEOF`.
331
- * @param ctx the parse tree
332
- * @return the visitor result
333
- */
334
- visitPipelineEOF?: (ctx: PipelineEOFContext) => Result;
335
- /**
336
- * Visit a parse tree produced by `HamelinParser.simpleIdentifierEOF`.
337
- * @param ctx the parse tree
338
- * @return the visitor result
339
- */
340
- visitSimpleIdentifierEOF?: (ctx: SimpleIdentifierEOFContext) => Result;
341
- /**
342
- * Visit a parse tree produced by the `withQuery`
343
- * labeled alternative in `HamelinParser.query`.
344
- * @param ctx the parse tree
345
- * @return the visitor result
346
- */
347
- visitWithQuery?: (ctx: WithQueryContext) => Result;
348
- /**
349
- * Visit a parse tree produced by the `standaloneQuery`
350
- * labeled alternative in `HamelinParser.query`.
351
- * @param ctx the parse tree
352
- * @return the visitor result
353
- */
354
- visitStandaloneQuery?: (ctx: StandaloneQueryContext) => Result;
355
- /**
356
- * Visit a parse tree produced by the `expressionQuery`
357
- * labeled alternative in `HamelinParser.query`.
358
- * @param ctx the parse tree
359
- * @return the visitor result
360
- */
361
- visitExpressionQuery?: (ctx: ExpressionQueryContext) => Result;
362
- /**
363
- * Visit a parse tree produced by the `pipelineAlt`
364
- * labeled alternative in `HamelinParser.pipeline`.
365
- * @param ctx the parse tree
366
- * @return the visitor result
367
- */
368
- visitPipelineAlt?: (ctx: PipelineAltContext) => Result;
369
- /**
370
- * Visit a parse tree produced by the `letCommand`
371
- * labeled alternative in `HamelinParser.command`.
372
- * @param ctx the parse tree
373
- * @return the visitor result
374
- */
375
- visitLetCommand?: (ctx: LetCommandContext) => Result;
376
- /**
377
- * Visit a parse tree produced by the `whereCommand`
378
- * labeled alternative in `HamelinParser.command`.
379
- * @param ctx the parse tree
380
- * @return the visitor result
381
- */
382
- visitWhereCommand?: (ctx: WhereCommandContext) => Result;
383
- /**
384
- * Visit a parse tree produced by the `selectCommand`
385
- * labeled alternative in `HamelinParser.command`.
386
- * @param ctx the parse tree
387
- * @return the visitor result
388
- */
389
- visitSelectCommand?: (ctx: SelectCommandContext) => Result;
390
- /**
391
- * Visit a parse tree produced by the `dropCommand`
392
- * labeled alternative in `HamelinParser.command`.
393
- * @param ctx the parse tree
394
- * @return the visitor result
395
- */
396
- visitDropCommand?: (ctx: DropCommandContext) => Result;
397
- /**
398
- * Visit a parse tree produced by the `fromCommand`
399
- * labeled alternative in `HamelinParser.command`.
400
- * @param ctx the parse tree
401
- * @return the visitor result
402
- */
403
- visitFromCommand?: (ctx: FromCommandContext) => Result;
404
- /**
405
- * Visit a parse tree produced by the `unionCommand`
406
- * labeled alternative in `HamelinParser.command`.
407
- * @param ctx the parse tree
408
- * @return the visitor result
409
- */
410
- visitUnionCommand?: (ctx: UnionCommandContext) => Result;
411
- /**
412
- * Visit a parse tree produced by the `limitCommand`
413
- * labeled alternative in `HamelinParser.command`.
414
- * @param ctx the parse tree
415
- * @return the visitor result
416
- */
417
- visitLimitCommand?: (ctx: LimitCommandContext) => Result;
418
- /**
419
- * Visit a parse tree produced by the `parseCommand`
420
- * labeled alternative in `HamelinParser.command`.
421
- * @param ctx the parse tree
422
- * @return the visitor result
423
- */
424
- visitParseCommand?: (ctx: ParseCommandContext) => Result;
425
- /**
426
- * Visit a parse tree produced by the `withinCommand`
427
- * labeled alternative in `HamelinParser.command`.
428
- * @param ctx the parse tree
429
- * @return the visitor result
430
- */
431
- visitWithinCommand?: (ctx: WithinCommandContext) => Result;
432
- /**
433
- * Visit a parse tree produced by the `aggCommand`
434
- * labeled alternative in `HamelinParser.command`.
435
- * @param ctx the parse tree
436
- * @return the visitor result
437
- */
438
- visitAggCommand?: (ctx: AggCommandContext) => Result;
439
- /**
440
- * Visit a parse tree produced by the `sortCommand`
441
- * labeled alternative in `HamelinParser.command`.
442
- * @param ctx the parse tree
443
- * @return the visitor result
444
- */
445
- visitSortCommand?: (ctx: SortCommandContext) => Result;
446
- /**
447
- * Visit a parse tree produced by the `windowCommand`
448
- * labeled alternative in `HamelinParser.command`.
449
- * @param ctx the parse tree
450
- * @return the visitor result
451
- */
452
- visitWindowCommand?: (ctx: WindowCommandContext) => Result;
453
- /**
454
- * Visit a parse tree produced by the `appendCommand`
455
- * labeled alternative in `HamelinParser.command`.
456
- * @param ctx the parse tree
457
- * @return the visitor result
458
- */
459
- visitAppendCommand?: (ctx: AppendCommandContext) => Result;
460
- /**
461
- * Visit a parse tree produced by the `joinCommand`
462
- * labeled alternative in `HamelinParser.command`.
463
- * @param ctx the parse tree
464
- * @return the visitor result
465
- */
466
- visitJoinCommand?: (ctx: JoinCommandContext) => Result;
467
- /**
468
- * Visit a parse tree produced by the `explodeCommand`
469
- * labeled alternative in `HamelinParser.command`.
470
- * @param ctx the parse tree
471
- * @return the visitor result
472
- */
473
- visitExplodeCommand?: (ctx: ExplodeCommandContext) => Result;
474
- /**
475
- * Visit a parse tree produced by the `unnestCommand`
476
- * labeled alternative in `HamelinParser.command`.
477
- * @param ctx the parse tree
478
- * @return the visitor result
479
- */
480
- visitUnnestCommand?: (ctx: UnnestCommandContext) => Result;
481
- /**
482
- * Visit a parse tree produced by the `nestCommand`
483
- * labeled alternative in `HamelinParser.command`.
484
- * @param ctx the parse tree
485
- * @return the visitor result
486
- */
487
- visitNestCommand?: (ctx: NestCommandContext) => Result;
488
- /**
489
- * Visit a parse tree produced by the `matchCommand`
490
- * labeled alternative in `HamelinParser.command`.
491
- * @param ctx the parse tree
492
- * @return the visitor result
493
- */
494
- visitMatchCommand?: (ctx: MatchCommandContext) => Result;
495
- /**
496
- * Visit a parse tree produced by `HamelinParser.assignmentClause`.
497
- * @param ctx the parse tree
498
- * @return the visitor result
499
- */
500
- visitAssignmentClause?: (ctx: AssignmentClauseContext) => Result;
501
- /**
502
- * Visit a parse tree produced by `HamelinParser.groupClause`.
503
- * @param ctx the parse tree
504
- * @return the visitor result
505
- */
506
- visitGroupClause?: (ctx: GroupClauseContext) => Result;
507
- /**
508
- * Visit a parse tree produced by `HamelinParser.assignment`.
509
- * @param ctx the parse tree
510
- * @return the visitor result
511
- */
512
- visitAssignment?: (ctx: AssignmentContext) => Result;
513
- /**
514
- * Visit a parse tree produced by `HamelinParser.matchDefine`.
515
- * @param ctx the parse tree
516
- * @return the visitor result
517
- */
518
- visitMatchDefine?: (ctx: MatchDefineContext) => Result;
519
- /**
520
- * Visit a parse tree produced by `HamelinParser.selection`.
521
- * @param ctx the parse tree
522
- * @return the visitor result
523
- */
524
- visitSelection?: (ctx: SelectionContext) => Result;
525
- /**
526
- * Visit a parse tree produced by `HamelinParser.sortExpression`.
527
- * @param ctx the parse tree
528
- * @return the visitor result
529
- */
530
- visitSortExpression?: (ctx: SortExpressionContext) => Result;
531
- /**
532
- * Visit a parse tree produced by `HamelinParser.tableAlias`.
533
- * @param ctx the parse tree
534
- * @return the visitor result
535
- */
536
- visitTableAlias?: (ctx: TableAliasContext) => Result;
537
- /**
538
- * Visit a parse tree produced by `HamelinParser.fromClause`.
539
- * @param ctx the parse tree
540
- * @return the visitor result
541
- */
542
- visitFromClause?: (ctx: FromClauseContext) => Result;
543
- /**
544
- * Visit a parse tree produced by the `structLiteral`
545
- * labeled alternative in `HamelinParser.expression`.
546
- * @param ctx the parse tree
547
- * @return the visitor result
548
- */
549
- visitStructLiteral?: (ctx: StructLiteralContext) => Result;
550
- /**
551
- * Visit a parse tree produced by the `columnReferenceAlt`
552
- * labeled alternative in `HamelinParser.expression`.
553
- * @param ctx the parse tree
554
- * @return the visitor result
555
- */
556
- visitColumnReferenceAlt?: (ctx: ColumnReferenceAltContext) => Result;
557
- /**
558
- * Visit a parse tree produced by the `deref`
559
- * labeled alternative in `HamelinParser.expression`.
560
- * @param ctx the parse tree
561
- * @return the visitor result
562
- */
563
- visitDeref?: (ctx: DerefContext) => Result;
564
- /**
565
- * Visit a parse tree produced by the `nullLiteral`
566
- * labeled alternative in `HamelinParser.expression`.
567
- * @param ctx the parse tree
568
- * @return the visitor result
569
- */
570
- visitNullLiteral?: (ctx: NullLiteralContext) => Result;
571
- /**
572
- * Visit a parse tree produced by the `arrayLiteral`
573
- * labeled alternative in `HamelinParser.expression`.
574
- * @param ctx the parse tree
575
- * @return the visitor result
576
- */
577
- visitArrayLiteral?: (ctx: ArrayLiteralContext) => Result;
578
- /**
579
- * Visit a parse tree produced by the `pairLiteral`
580
- * labeled alternative in `HamelinParser.expression`.
581
- * @param ctx the parse tree
582
- * @return the visitor result
583
- */
584
- visitPairLiteral?: (ctx: PairLiteralContext) => Result;
585
- /**
586
- * Visit a parse tree produced by the `tsTrunc`
587
- * labeled alternative in `HamelinParser.expression`.
588
- * @param ctx the parse tree
589
- * @return the visitor result
590
- */
591
- visitTsTrunc?: (ctx: TsTruncContext) => Result;
592
- /**
593
- * Visit a parse tree produced by the `rowsLiteral`
594
- * labeled alternative in `HamelinParser.expression`.
595
- * @param ctx the parse tree
596
- * @return the visitor result
597
- */
598
- visitRowsLiteral?: (ctx: RowsLiteralContext) => Result;
599
- /**
600
- * Visit a parse tree produced by the `tsTruncTimestampLiteral`
601
- * labeled alternative in `HamelinParser.expression`.
602
- * @param ctx the parse tree
603
- * @return the visitor result
604
- */
605
- visitTsTruncTimestampLiteral?: (ctx: TsTruncTimestampLiteralContext) => Result;
606
- /**
607
- * Visit a parse tree produced by the `unaryPrefixOperator`
608
- * labeled alternative in `HamelinParser.expression`.
609
- * @param ctx the parse tree
610
- * @return the visitor result
611
- */
612
- visitUnaryPrefixOperator?: (ctx: UnaryPrefixOperatorContext) => Result;
613
- /**
614
- * Visit a parse tree produced by the `binaryLiteral`
615
- * labeled alternative in `HamelinParser.expression`.
616
- * @param ctx the parse tree
617
- * @return the visitor result
618
- */
619
- visitBinaryLiteral?: (ctx: BinaryLiteralContext) => Result;
620
- /**
621
- * Visit a parse tree produced by the `indexAccess`
622
- * labeled alternative in `HamelinParser.expression`.
623
- * @param ctx the parse tree
624
- * @return the visitor result
625
- */
626
- visitIndexAccess?: (ctx: IndexAccessContext) => Result;
627
- /**
628
- * Visit a parse tree produced by the `cast`
629
- * labeled alternative in `HamelinParser.expression`.
630
- * @param ctx the parse tree
631
- * @return the visitor result
632
- */
633
- visitCast?: (ctx: CastContext) => Result;
634
- /**
635
- * Visit a parse tree produced by the `unaryPostfixOperator`
636
- * labeled alternative in `HamelinParser.expression`.
637
- * @param ctx the parse tree
638
- * @return the visitor result
639
- */
640
- visitUnaryPostfixOperator?: (ctx: UnaryPostfixOperatorContext) => Result;
641
- /**
642
- * Visit a parse tree produced by the `tupleLiteral`
643
- * labeled alternative in `HamelinParser.expression`.
644
- * @param ctx the parse tree
645
- * @return the visitor result
646
- */
647
- visitTupleLiteral?: (ctx: TupleLiteralContext) => Result;
648
- /**
649
- * Visit a parse tree produced by the `parenthesizedExpression`
650
- * labeled alternative in `HamelinParser.expression`.
651
- * @param ctx the parse tree
652
- * @return the visitor result
653
- */
654
- visitParenthesizedExpression?: (ctx: ParenthesizedExpressionContext) => Result;
655
- /**
656
- * Visit a parse tree produced by the `stringLiteral`
657
- * labeled alternative in `HamelinParser.expression`.
658
- * @param ctx the parse tree
659
- * @return the visitor result
660
- */
661
- visitStringLiteral?: (ctx: StringLiteralContext) => Result;
662
- /**
663
- * Visit a parse tree produced by the `binaryOperator`
664
- * labeled alternative in `HamelinParser.expression`.
665
- * @param ctx the parse tree
666
- * @return the visitor result
667
- */
668
- visitBinaryOperator?: (ctx: BinaryOperatorContext) => Result;
669
- /**
670
- * Visit a parse tree produced by the `functionCall`
671
- * labeled alternative in `HamelinParser.expression`.
672
- * @param ctx the parse tree
673
- * @return the visitor result
674
- */
675
- visitFunctionCall?: (ctx: FunctionCallContext) => Result;
676
- /**
677
- * Visit a parse tree produced by the `unboundRangeLiteral`
678
- * labeled alternative in `HamelinParser.expression`.
679
- * @param ctx the parse tree
680
- * @return the visitor result
681
- */
682
- visitUnboundRangeLiteral?: (ctx: UnboundRangeLiteralContext) => Result;
683
- /**
684
- * Visit a parse tree produced by the `numericLiteral`
685
- * labeled alternative in `HamelinParser.expression`.
686
- * @param ctx the parse tree
687
- * @return the visitor result
688
- */
689
- visitNumericLiteral?: (ctx: NumericLiteralContext) => Result;
690
- /**
691
- * Visit a parse tree produced by the `booleanLiteral`
692
- * labeled alternative in `HamelinParser.expression`.
693
- * @param ctx the parse tree
694
- * @return the visitor result
695
- */
696
- visitBooleanLiteral?: (ctx: BooleanLiteralContext) => Result;
697
- /**
698
- * Visit a parse tree produced by the `intervalLiteral`
699
- * labeled alternative in `HamelinParser.expression`.
700
- * @param ctx the parse tree
701
- * @return the visitor result
702
- */
703
- visitIntervalLiteral?: (ctx: IntervalLiteralContext) => Result;
704
- /**
705
- * Visit a parse tree produced by the `parameterizedType`
706
- * labeled alternative in `HamelinParser.hamelintype`.
707
- * @param ctx the parse tree
708
- * @return the visitor result
709
- */
710
- visitParameterizedType?: (ctx: ParameterizedTypeContext) => Result;
711
- /**
712
- * Visit a parse tree produced by the `typeWithArguments`
713
- * labeled alternative in `HamelinParser.hamelintype`.
714
- * @param ctx the parse tree
715
- * @return the visitor result
716
- */
717
- visitTypeWithArguments?: (ctx: TypeWithArgumentsContext) => Result;
718
- /**
719
- * Visit a parse tree produced by the `structType`
720
- * labeled alternative in `HamelinParser.hamelintype`.
721
- * @param ctx the parse tree
722
- * @return the visitor result
723
- */
724
- visitStructType?: (ctx: StructTypeContext) => Result;
725
- /**
726
- * Visit a parse tree produced by the `tupleType`
727
- * labeled alternative in `HamelinParser.hamelintype`.
728
- * @param ctx the parse tree
729
- * @return the visitor result
730
- */
731
- visitTupleType?: (ctx: TupleTypeContext) => Result;
732
- /**
733
- * Visit a parse tree produced by the `simpleType`
734
- * labeled alternative in `HamelinParser.hamelintype`.
735
- * @param ctx the parse tree
736
- * @return the visitor result
737
- */
738
- visitSimpleType?: (ctx: SimpleTypeContext) => Result;
739
- /**
740
- * Visit a parse tree produced by the `quantified`
741
- * labeled alternative in `HamelinParser.pattern`.
742
- * @param ctx the parse tree
743
- * @return the visitor result
744
- */
745
- visitQuantified?: (ctx: QuantifiedContext) => Result;
746
- /**
747
- * Visit a parse tree produced by the `nested`
748
- * labeled alternative in `HamelinParser.pattern`.
749
- * @param ctx the parse tree
750
- * @return the visitor result
751
- */
752
- visitNested?: (ctx: NestedContext) => Result;
753
- /**
754
- * Visit a parse tree produced by the `AnyNumber`
755
- * labeled alternative in `HamelinParser.quantifier`.
756
- * @param ctx the parse tree
757
- * @return the visitor result
758
- */
759
- visitAnyNumber?: (ctx: AnyNumberContext) => Result;
760
- /**
761
- * Visit a parse tree produced by the `AtLeastOne`
762
- * labeled alternative in `HamelinParser.quantifier`.
763
- * @param ctx the parse tree
764
- * @return the visitor result
765
- */
766
- visitAtLeastOne?: (ctx: AtLeastOneContext) => Result;
767
- /**
768
- * Visit a parse tree produced by the `ZeroOrOne`
769
- * labeled alternative in `HamelinParser.quantifier`.
770
- * @param ctx the parse tree
771
- * @return the visitor result
772
- */
773
- visitZeroOrOne?: (ctx: ZeroOrOneContext) => Result;
774
- /**
775
- * Visit a parse tree produced by the `Exactly`
776
- * labeled alternative in `HamelinParser.quantifier`.
777
- * @param ctx the parse tree
778
- * @return the visitor result
779
- */
780
- visitExactly?: (ctx: ExactlyContext) => Result;
781
- /**
782
- * Visit a parse tree produced by `HamelinParser.columnReference`.
783
- * @param ctx the parse tree
784
- * @return the visitor result
785
- */
786
- visitColumnReference?: (ctx: ColumnReferenceContext) => Result;
787
- /**
788
- * Visit a parse tree produced by `HamelinParser.tableReference`.
789
- * @param ctx the parse tree
790
- * @return the visitor result
791
- */
792
- visitTableReference?: (ctx: TableReferenceContext) => Result;
793
- /**
794
- * Visit a parse tree produced by `HamelinParser.identifier`.
795
- * @param ctx the parse tree
796
- * @return the visitor result
797
- */
798
- visitIdentifier?: (ctx: IdentifierContext) => Result;
799
- /**
800
- * Visit a parse tree produced by the `unquotedIdentifier`
801
- * labeled alternative in `HamelinParser.simpleIdentifier`.
802
- * @param ctx the parse tree
803
- * @return the visitor result
804
- */
805
- visitUnquotedIdentifier?: (ctx: UnquotedIdentifierContext) => Result;
806
- /**
807
- * Visit a parse tree produced by the `backQuotedIdentifier`
808
- * labeled alternative in `HamelinParser.simpleIdentifier`.
809
- * @param ctx the parse tree
810
- * @return the visitor result
811
- */
812
- visitBackQuotedIdentifier?: (ctx: BackQuotedIdentifierContext) => Result;
813
- /**
814
- * Visit a parse tree produced by the `basicSingleQuotedStringLiteral`
815
- * labeled alternative in `HamelinParser.string`.
816
- * @param ctx the parse tree
817
- * @return the visitor result
818
- */
819
- visitBasicSingleQuotedStringLiteral?: (ctx: BasicSingleQuotedStringLiteralContext) => Result;
820
- /**
821
- * Visit a parse tree produced by the `basicDoubleQuotedStringLiteral`
822
- * labeled alternative in `HamelinParser.string`.
823
- * @param ctx the parse tree
824
- * @return the visitor result
825
- */
826
- visitBasicDoubleQuotedStringLiteral?: (ctx: BasicDoubleQuotedStringLiteralContext) => Result;
827
- /**
828
- * Visit a parse tree produced by the `unicodeSingleQuotedStringLiteral`
829
- * labeled alternative in `HamelinParser.string`.
830
- * @param ctx the parse tree
831
- * @return the visitor result
832
- */
833
- visitUnicodeSingleQuotedStringLiteral?: (ctx: UnicodeSingleQuotedStringLiteralContext) => Result;
834
- /**
835
- * Visit a parse tree produced by the `unicodeDoubleQuotedStringLiteral`
836
- * labeled alternative in `HamelinParser.string`.
837
- * @param ctx the parse tree
838
- * @return the visitor result
839
- */
840
- visitUnicodeDoubleQuotedStringLiteral?: (ctx: UnicodeDoubleQuotedStringLiteralContext) => Result;
841
- /**
842
- * Visit a parse tree produced by the `decimalLiteral`
843
- * labeled alternative in `HamelinParser.number`.
844
- * @param ctx the parse tree
845
- * @return the visitor result
846
- */
847
- visitDecimalLiteral?: (ctx: DecimalLiteralContext) => Result;
848
- /**
849
- * Visit a parse tree produced by the `scientificLiteral`
850
- * labeled alternative in `HamelinParser.number`.
851
- * @param ctx the parse tree
852
- * @return the visitor result
853
- */
854
- visitScientificLiteral?: (ctx: ScientificLiteralContext) => Result;
855
- /**
856
- * Visit a parse tree produced by the `integerLiteral`
857
- * labeled alternative in `HamelinParser.number`.
858
- * @param ctx the parse tree
859
- * @return the visitor result
860
- */
861
- visitIntegerLiteral?: (ctx: IntegerLiteralContext) => Result;
862
- /**
863
- * Visit a parse tree produced by `HamelinParser.positionalArgument`.
864
- * @param ctx the parse tree
865
- * @return the visitor result
866
- */
867
- visitPositionalArgument?: (ctx: PositionalArgumentContext) => Result;
868
- /**
869
- * Visit a parse tree produced by `HamelinParser.namedArgument`.
870
- * @param ctx the parse tree
871
- * @return the visitor result
872
- */
873
- visitNamedArgument?: (ctx: NamedArgumentContext) => Result;
874
- }
875
-
876
- declare class HamelinParser extends antlr.Parser {
877
- static readonly LET_COMMAND = 1;
878
- static readonly WHERE_COMMAND = 2;
879
- static readonly SELECT_COMMAND = 3;
880
- static readonly DROP_COMMAND = 4;
881
- static readonly FROM_COMMAND = 5;
882
- static readonly UNION_COMMAND = 6;
883
- static readonly LIMIT_COMMAND = 7;
884
- static readonly PARSE_COMMAND = 8;
885
- static readonly WITHIN_COMMAND = 9;
886
- static readonly AGG_COMMAND = 10;
887
- static readonly WINDOW_COMMAND = 11;
888
- static readonly APPEND_COMMAND = 12;
889
- static readonly JOIN_COMMAND = 13;
890
- static readonly LOOKUP_COMMAND = 14;
891
- static readonly EXPLODE_COMMAND = 15;
892
- static readonly UNNEST_COMMAND = 16;
893
- static readonly NEST_COMMAND = 17;
894
- static readonly ROWS_COMMAND = 18;
895
- static readonly MATCH_COMMAND = 19;
896
- static readonly AS = 20;
897
- static readonly NODROP = 21;
898
- static readonly PLUS = 22;
899
- static readonly MINUS = 23;
900
- static readonly ASTERISK = 24;
901
- static readonly SLASH = 25;
902
- static readonly PERCENT = 26;
903
- static readonly LCURLY = 27;
904
- static readonly RCURLY = 28;
905
- static readonly COLON = 29;
906
- static readonly QUESTIONMARK = 30;
907
- static readonly EQ = 31;
908
- static readonly NEQ = 32;
909
- static readonly LT = 33;
910
- static readonly LTE = 34;
911
- static readonly GT = 35;
912
- static readonly GTE = 36;
913
- static readonly RANGE = 37;
914
- static readonly ASSIGN = 38;
915
- static readonly AND = 39;
916
- static readonly FALSE = 40;
917
- static readonly IS = 41;
918
- static readonly NOT = 42;
919
- static readonly ISNOT = 43;
920
- static readonly IN = 44;
921
- static readonly NOTIN = 45;
922
- static readonly NULL = 46;
923
- static readonly OR = 47;
924
- static readonly TRUE = 48;
925
- static readonly UESCAPE = 49;
926
- static readonly WITH = 50;
927
- static readonly BY = 51;
928
- static readonly SORT = 52;
929
- static readonly ASC = 53;
930
- static readonly DESC = 54;
931
- static readonly DISTINCT_BY = 55;
932
- static readonly ON = 56;
933
- static readonly WHEN = 57;
934
- static readonly COMMA = 58;
935
- static readonly PIPE = 59;
936
- static readonly LPARENS = 60;
937
- static readonly RPARENS = 61;
938
- static readonly DOT = 62;
939
- static readonly LBRACKET = 63;
940
- static readonly RBRACKET = 64;
941
- static readonly SINGLE_QUOTED_STRING = 65;
942
- static readonly DOUBLE_QUOTED_STRING = 66;
943
- static readonly SINGLE_QUOTED_UNICODE_STRING = 67;
944
- static readonly DOUBLE_QUOTED_UNICODE_STRING = 68;
945
- static readonly BINARY_LITERAL = 69;
946
- static readonly NANOSECOND_INTERVAL = 70;
947
- static readonly MICROSECOND_INTERVAL = 71;
948
- static readonly MILLISECOND_INTERVAL = 72;
949
- static readonly SECOND_INTERVAL = 73;
950
- static readonly MINUTE_INTERVAL = 74;
951
- static readonly HOUR_INTERVAL = 75;
952
- static readonly DAY_INTERVAL = 76;
953
- static readonly WEEK_INTERVAL = 77;
954
- static readonly MONTH_INTERVAL = 78;
955
- static readonly QUARTER_INTERVAL = 79;
956
- static readonly YEAR_INTERVAL = 80;
957
- static readonly ROWS_LITERAL = 81;
958
- static readonly SECOND_TRUNC = 82;
959
- static readonly MINUTE_TRUNC = 83;
960
- static readonly HOUR_TRUNC = 84;
961
- static readonly DAY_TRUNC = 85;
962
- static readonly WEEK_TRUNC = 86;
963
- static readonly MONTH_TRUNC = 87;
964
- static readonly QUARTER_TRUNC = 88;
965
- static readonly YEAR_TRUNC = 89;
966
- static readonly INTEGER_VALUE = 90;
967
- static readonly DECIMAL_VALUE = 91;
968
- static readonly DOUBLE_VALUE = 92;
969
- static readonly IDENTIFIER = 93;
970
- static readonly BACKQUOTED_IDENTIFIER = 94;
971
- static readonly SIMPLE_COMMENT = 95;
972
- static readonly BRACKETED_COMMENT = 96;
973
- static readonly WS = 97;
974
- static readonly RULE_identifierEOF = 0;
975
- static readonly RULE_queryEOF = 1;
976
- static readonly RULE_commandEOF = 2;
977
- static readonly RULE_expressionEOF = 3;
978
- static readonly RULE_pipelineEOF = 4;
979
- static readonly RULE_simpleIdentifierEOF = 5;
980
- static readonly RULE_query = 6;
981
- static readonly RULE_pipeline = 7;
982
- static readonly RULE_command = 8;
983
- static readonly RULE_assignmentClause = 9;
984
- static readonly RULE_groupClause = 10;
985
- static readonly RULE_assignment = 11;
986
- static readonly RULE_matchDefine = 12;
987
- static readonly RULE_selection = 13;
988
- static readonly RULE_sortExpression = 14;
989
- static readonly RULE_tableAlias = 15;
990
- static readonly RULE_fromClause = 16;
991
- static readonly RULE_expression = 17;
992
- static readonly RULE_hamelintype = 18;
993
- static readonly RULE_pattern = 19;
994
- static readonly RULE_quantifier = 20;
995
- static readonly RULE_columnReference = 21;
996
- static readonly RULE_tableReference = 22;
997
- static readonly RULE_identifier = 23;
998
- static readonly RULE_simpleIdentifier = 24;
999
- static readonly RULE_string = 25;
1000
- static readonly RULE_number = 26;
1001
- static readonly RULE_positionalArgument = 27;
1002
- static readonly RULE_namedArgument = 28;
1003
- static readonly literalNames: (string | null)[];
1004
- static readonly symbolicNames: (string | null)[];
1005
- static readonly ruleNames: string[];
1006
- get grammarFileName(): string;
1007
- get literalNames(): (string | null)[];
1008
- get symbolicNames(): (string | null)[];
1009
- get ruleNames(): string[];
1010
- get serializedATN(): number[];
1011
- protected createFailedPredicateException(predicate?: string, message?: string): antlr.FailedPredicateException;
1012
- constructor(input: antlr.TokenStream);
1013
- identifierEOF(): IdentifierEOFContext;
1014
- queryEOF(): QueryEOFContext;
1015
- commandEOF(): CommandEOFContext;
1016
- expressionEOF(): ExpressionEOFContext;
1017
- pipelineEOF(): PipelineEOFContext;
1018
- simpleIdentifierEOF(): SimpleIdentifierEOFContext;
1019
- query(): QueryContext;
1020
- pipeline(): PipelineContext;
1021
- command(): CommandContext;
1022
- assignmentClause(): AssignmentClauseContext;
1023
- groupClause(): GroupClauseContext;
1024
- assignment(): AssignmentContext;
1025
- matchDefine(): MatchDefineContext;
1026
- selection(): SelectionContext;
1027
- sortExpression(): SortExpressionContext;
1028
- tableAlias(): TableAliasContext;
1029
- fromClause(): FromClauseContext;
1030
- expression(): ExpressionContext;
1031
- expression(_p: number): ExpressionContext;
1032
- hamelintype(): HamelintypeContext;
1033
- pattern(): PatternContext;
1034
- quantifier(): QuantifierContext;
1035
- columnReference(): ColumnReferenceContext;
1036
- tableReference(): TableReferenceContext;
1037
- identifier(): IdentifierContext;
1038
- simpleIdentifier(): SimpleIdentifierContext;
1039
- string_(): StringContext;
1040
- number_(): NumberContext;
1041
- positionalArgument(): PositionalArgumentContext;
1042
- namedArgument(): NamedArgumentContext;
1043
- sempred(localContext: antlr.ParserRuleContext | null, ruleIndex: number, predIndex: number): boolean;
1044
- private expression_sempred;
1045
- static readonly _serializedATN: number[];
1046
- private static __ATN;
1047
- static get _ATN(): antlr.ATN;
1048
- private static readonly vocabulary;
1049
- get vocabulary(): antlr.Vocabulary;
1050
- private static readonly decisionsToDFA;
1051
- }
1052
- declare class IdentifierEOFContext extends antlr.ParserRuleContext {
1053
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1054
- identifier(): IdentifierContext;
1055
- EOF(): antlr.TerminalNode;
1056
- get ruleIndex(): number;
1057
- enterRule(listener: HamelinListener): void;
1058
- exitRule(listener: HamelinListener): void;
1059
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1060
- }
1061
- declare class QueryEOFContext extends antlr.ParserRuleContext {
1062
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1063
- query(): QueryContext;
1064
- EOF(): antlr.TerminalNode;
1065
- get ruleIndex(): number;
1066
- enterRule(listener: HamelinListener): void;
1067
- exitRule(listener: HamelinListener): void;
1068
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1069
- }
1070
- declare class CommandEOFContext extends antlr.ParserRuleContext {
1071
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1072
- command(): CommandContext;
1073
- EOF(): antlr.TerminalNode;
1074
- get ruleIndex(): number;
1075
- enterRule(listener: HamelinListener): void;
1076
- exitRule(listener: HamelinListener): void;
1077
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1078
- }
1079
- declare class ExpressionEOFContext extends antlr.ParserRuleContext {
1080
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1081
- expression(): ExpressionContext;
1082
- EOF(): antlr.TerminalNode;
1083
- get ruleIndex(): number;
1084
- enterRule(listener: HamelinListener): void;
1085
- exitRule(listener: HamelinListener): void;
1086
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1087
- }
1088
- declare class PipelineEOFContext extends antlr.ParserRuleContext {
1089
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1090
- pipeline(): PipelineContext;
1091
- EOF(): antlr.TerminalNode;
1092
- get ruleIndex(): number;
1093
- enterRule(listener: HamelinListener): void;
1094
- exitRule(listener: HamelinListener): void;
1095
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1096
- }
1097
- declare class SimpleIdentifierEOFContext extends antlr.ParserRuleContext {
1098
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1099
- simpleIdentifier(): SimpleIdentifierContext;
1100
- EOF(): antlr.TerminalNode;
1101
- get ruleIndex(): number;
1102
- enterRule(listener: HamelinListener): void;
1103
- exitRule(listener: HamelinListener): void;
1104
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1105
- }
1106
- declare class QueryContext extends antlr.ParserRuleContext {
1107
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1108
- get ruleIndex(): number;
1109
- copyFrom(ctx: QueryContext): void;
1110
- }
1111
- declare class WithQueryContext extends QueryContext {
1112
- constructor(ctx: QueryContext);
1113
- pipeline(): PipelineContext[];
1114
- pipeline(i: number): PipelineContext | null;
1115
- WITH(): antlr.TerminalNode[];
1116
- WITH(i: number): antlr.TerminalNode | null;
1117
- simpleIdentifier(): SimpleIdentifierContext[];
1118
- simpleIdentifier(i: number): SimpleIdentifierContext | null;
1119
- ASSIGN(): antlr.TerminalNode[];
1120
- ASSIGN(i: number): antlr.TerminalNode | null;
1121
- enterRule(listener: HamelinListener): void;
1122
- exitRule(listener: HamelinListener): void;
1123
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1124
- }
1125
- declare class StandaloneQueryContext extends QueryContext {
1126
- constructor(ctx: QueryContext);
1127
- pipeline(): PipelineContext;
1128
- enterRule(listener: HamelinListener): void;
1129
- exitRule(listener: HamelinListener): void;
1130
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1131
- }
1132
- declare class ExpressionQueryContext extends QueryContext {
1133
- constructor(ctx: QueryContext);
1134
- expression(): ExpressionContext;
1135
- enterRule(listener: HamelinListener): void;
1136
- exitRule(listener: HamelinListener): void;
1137
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1138
- }
1139
- declare class PipelineContext extends antlr.ParserRuleContext {
1140
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1141
- get ruleIndex(): number;
1142
- copyFrom(ctx: PipelineContext): void;
1143
- }
1144
- declare class PipelineAltContext extends PipelineContext {
1145
- constructor(ctx: PipelineContext);
1146
- command(): CommandContext[];
1147
- command(i: number): CommandContext | null;
1148
- PIPE(): antlr.TerminalNode[];
1149
- PIPE(i: number): antlr.TerminalNode | null;
1150
- enterRule(listener: HamelinListener): void;
1151
- exitRule(listener: HamelinListener): void;
1152
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1153
- }
1154
- declare class CommandContext extends antlr.ParserRuleContext {
1155
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1156
- get ruleIndex(): number;
1157
- copyFrom(ctx: CommandContext): void;
1158
- }
1159
- declare class WhereCommandContext extends CommandContext {
1160
- constructor(ctx: CommandContext);
1161
- WHERE_COMMAND(): antlr.TerminalNode;
1162
- expression(): ExpressionContext;
1163
- enterRule(listener: HamelinListener): void;
1164
- exitRule(listener: HamelinListener): void;
1165
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1166
- }
1167
- declare class UnnestCommandContext extends CommandContext {
1168
- constructor(ctx: CommandContext);
1169
- expression(): ExpressionContext;
1170
- UNNEST_COMMAND(): antlr.TerminalNode | null;
1171
- ROWS_COMMAND(): antlr.TerminalNode | null;
1172
- enterRule(listener: HamelinListener): void;
1173
- exitRule(listener: HamelinListener): void;
1174
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1175
- }
1176
- declare class DropCommandContext extends CommandContext {
1177
- constructor(ctx: CommandContext);
1178
- DROP_COMMAND(): antlr.TerminalNode;
1179
- selection(): SelectionContext[];
1180
- selection(i: number): SelectionContext | null;
1181
- COMMA(): antlr.TerminalNode[];
1182
- COMMA(i: number): antlr.TerminalNode | null;
1183
- enterRule(listener: HamelinListener): void;
1184
- exitRule(listener: HamelinListener): void;
1185
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1186
- }
1187
- declare class MatchCommandContext extends CommandContext {
1188
- constructor(ctx: CommandContext);
1189
- MATCH_COMMAND(): antlr.TerminalNode;
1190
- pattern(): PatternContext[];
1191
- pattern(i: number): PatternContext | null;
1192
- WHEN(): antlr.TerminalNode | null;
1193
- matchDefine(): MatchDefineContext[];
1194
- matchDefine(i: number): MatchDefineContext | null;
1195
- COMMA(): antlr.TerminalNode[];
1196
- COMMA(i: number): antlr.TerminalNode | null;
1197
- BY(): antlr.TerminalNode[];
1198
- BY(i: number): antlr.TerminalNode | null;
1199
- groupClause(): GroupClauseContext[];
1200
- groupClause(i: number): GroupClauseContext | null;
1201
- SORT(): antlr.TerminalNode | null;
1202
- sortExpression(): SortExpressionContext[];
1203
- sortExpression(i: number): SortExpressionContext | null;
1204
- enterRule(listener: HamelinListener): void;
1205
- exitRule(listener: HamelinListener): void;
1206
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1207
- }
1208
- declare class SelectCommandContext extends CommandContext {
1209
- constructor(ctx: CommandContext);
1210
- SELECT_COMMAND(): antlr.TerminalNode;
1211
- assignmentClause(): AssignmentClauseContext[];
1212
- assignmentClause(i: number): AssignmentClauseContext | null;
1213
- COMMA(): antlr.TerminalNode[];
1214
- COMMA(i: number): antlr.TerminalNode | null;
1215
- enterRule(listener: HamelinListener): void;
1216
- exitRule(listener: HamelinListener): void;
1217
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1218
- }
1219
- declare class WindowCommandContext extends CommandContext {
1220
- _within?: ExpressionContext;
1221
- constructor(ctx: CommandContext);
1222
- WINDOW_COMMAND(): antlr.TerminalNode;
1223
- assignmentClause(): AssignmentClauseContext[];
1224
- assignmentClause(i: number): AssignmentClauseContext | null;
1225
- COMMA(): antlr.TerminalNode[];
1226
- COMMA(i: number): antlr.TerminalNode | null;
1227
- BY(): antlr.TerminalNode[];
1228
- BY(i: number): antlr.TerminalNode | null;
1229
- groupClause(): GroupClauseContext[];
1230
- groupClause(i: number): GroupClauseContext | null;
1231
- SORT(): antlr.TerminalNode | null;
1232
- sortExpression(): SortExpressionContext[];
1233
- sortExpression(i: number): SortExpressionContext | null;
1234
- WITHIN_COMMAND(): antlr.TerminalNode | null;
1235
- expression(): ExpressionContext | null;
1236
- enterRule(listener: HamelinListener): void;
1237
- exitRule(listener: HamelinListener): void;
1238
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1239
- }
1240
- declare class LimitCommandContext extends CommandContext {
1241
- constructor(ctx: CommandContext);
1242
- LIMIT_COMMAND(): antlr.TerminalNode;
1243
- expression(): ExpressionContext;
1244
- enterRule(listener: HamelinListener): void;
1245
- exitRule(listener: HamelinListener): void;
1246
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1247
- }
1248
- declare class WithinCommandContext extends CommandContext {
1249
- constructor(ctx: CommandContext);
1250
- WITHIN_COMMAND(): antlr.TerminalNode;
1251
- expression(): ExpressionContext;
1252
- enterRule(listener: HamelinListener): void;
1253
- exitRule(listener: HamelinListener): void;
1254
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1255
- }
1256
- declare class ExplodeCommandContext extends CommandContext {
1257
- constructor(ctx: CommandContext);
1258
- EXPLODE_COMMAND(): antlr.TerminalNode;
1259
- assignmentClause(): AssignmentClauseContext;
1260
- enterRule(listener: HamelinListener): void;
1261
- exitRule(listener: HamelinListener): void;
1262
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1263
- }
1264
- declare class AppendCommandContext extends CommandContext {
1265
- constructor(ctx: CommandContext);
1266
- APPEND_COMMAND(): antlr.TerminalNode;
1267
- tableReference(): TableReferenceContext;
1268
- DISTINCT_BY(): antlr.TerminalNode | null;
1269
- selection(): SelectionContext[];
1270
- selection(i: number): SelectionContext | null;
1271
- COMMA(): antlr.TerminalNode[];
1272
- COMMA(i: number): antlr.TerminalNode | null;
1273
- enterRule(listener: HamelinListener): void;
1274
- exitRule(listener: HamelinListener): void;
1275
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1276
- }
1277
- declare class NestCommandContext extends CommandContext {
1278
- constructor(ctx: CommandContext);
1279
- NEST_COMMAND(): antlr.TerminalNode;
1280
- identifier(): IdentifierContext;
1281
- enterRule(listener: HamelinListener): void;
1282
- exitRule(listener: HamelinListener): void;
1283
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1284
- }
1285
- declare class LetCommandContext extends CommandContext {
1286
- constructor(ctx: CommandContext);
1287
- LET_COMMAND(): antlr.TerminalNode;
1288
- assignment(): AssignmentContext[];
1289
- assignment(i: number): AssignmentContext | null;
1290
- COMMA(): antlr.TerminalNode[];
1291
- COMMA(i: number): antlr.TerminalNode | null;
1292
- enterRule(listener: HamelinListener): void;
1293
- exitRule(listener: HamelinListener): void;
1294
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1295
- }
1296
- declare class SortCommandContext extends CommandContext {
1297
- constructor(ctx: CommandContext);
1298
- SORT(): antlr.TerminalNode;
1299
- sortExpression(): SortExpressionContext[];
1300
- sortExpression(i: number): SortExpressionContext | null;
1301
- BY(): antlr.TerminalNode | null;
1302
- COMMA(): antlr.TerminalNode[];
1303
- COMMA(i: number): antlr.TerminalNode | null;
1304
- enterRule(listener: HamelinListener): void;
1305
- exitRule(listener: HamelinListener): void;
1306
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1307
- }
1308
- declare class JoinCommandContext extends CommandContext {
1309
- _on?: ExpressionContext;
1310
- constructor(ctx: CommandContext);
1311
- fromClause(): FromClauseContext;
1312
- JOIN_COMMAND(): antlr.TerminalNode | null;
1313
- LOOKUP_COMMAND(): antlr.TerminalNode | null;
1314
- ON(): antlr.TerminalNode | null;
1315
- expression(): ExpressionContext | null;
1316
- enterRule(listener: HamelinListener): void;
1317
- exitRule(listener: HamelinListener): void;
1318
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1319
- }
1320
- declare class UnionCommandContext extends CommandContext {
1321
- constructor(ctx: CommandContext);
1322
- UNION_COMMAND(): antlr.TerminalNode;
1323
- fromClause(): FromClauseContext[];
1324
- fromClause(i: number): FromClauseContext | null;
1325
- COMMA(): antlr.TerminalNode[];
1326
- COMMA(i: number): antlr.TerminalNode | null;
1327
- enterRule(listener: HamelinListener): void;
1328
- exitRule(listener: HamelinListener): void;
1329
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1330
- }
1331
- declare class AggCommandContext extends CommandContext {
1332
- constructor(ctx: CommandContext);
1333
- AGG_COMMAND(): antlr.TerminalNode;
1334
- assignmentClause(): AssignmentClauseContext[];
1335
- assignmentClause(i: number): AssignmentClauseContext | null;
1336
- COMMA(): antlr.TerminalNode[];
1337
- COMMA(i: number): antlr.TerminalNode | null;
1338
- BY(): antlr.TerminalNode[];
1339
- BY(i: number): antlr.TerminalNode | null;
1340
- groupClause(): GroupClauseContext[];
1341
- groupClause(i: number): GroupClauseContext | null;
1342
- SORT(): antlr.TerminalNode | null;
1343
- sortExpression(): SortExpressionContext[];
1344
- sortExpression(i: number): SortExpressionContext | null;
1345
- enterRule(listener: HamelinListener): void;
1346
- exitRule(listener: HamelinListener): void;
1347
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1348
- }
1349
- declare class FromCommandContext extends CommandContext {
1350
- constructor(ctx: CommandContext);
1351
- FROM_COMMAND(): antlr.TerminalNode;
1352
- fromClause(): FromClauseContext[];
1353
- fromClause(i: number): FromClauseContext | null;
1354
- COMMA(): antlr.TerminalNode[];
1355
- COMMA(i: number): antlr.TerminalNode | null;
1356
- enterRule(listener: HamelinListener): void;
1357
- exitRule(listener: HamelinListener): void;
1358
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1359
- }
1360
- declare class ParseCommandContext extends CommandContext {
1361
- _src?: ExpressionContext;
1362
- constructor(ctx: CommandContext);
1363
- PARSE_COMMAND(): antlr.TerminalNode;
1364
- string(): StringContext;
1365
- identifier(): IdentifierContext[];
1366
- identifier(i: number): IdentifierContext | null;
1367
- AS(): antlr.TerminalNode | null;
1368
- COMMA(): antlr.TerminalNode[];
1369
- COMMA(i: number): antlr.TerminalNode | null;
1370
- NODROP(): antlr.TerminalNode | null;
1371
- expression(): ExpressionContext | null;
1372
- enterRule(listener: HamelinListener): void;
1373
- exitRule(listener: HamelinListener): void;
1374
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1375
- }
1376
- declare class AssignmentClauseContext extends antlr.ParserRuleContext {
1377
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1378
- assignment(): AssignmentContext | null;
1379
- expression(): ExpressionContext | null;
1380
- get ruleIndex(): number;
1381
- enterRule(listener: HamelinListener): void;
1382
- exitRule(listener: HamelinListener): void;
1383
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1384
- }
1385
- declare class GroupClauseContext extends antlr.ParserRuleContext {
1386
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1387
- assignmentClause(): AssignmentClauseContext;
1388
- get ruleIndex(): number;
1389
- enterRule(listener: HamelinListener): void;
1390
- exitRule(listener: HamelinListener): void;
1391
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1392
- }
1393
- declare class AssignmentContext extends antlr.ParserRuleContext {
1394
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1395
- identifier(): IdentifierContext;
1396
- ASSIGN(): antlr.TerminalNode;
1397
- expression(): ExpressionContext;
1398
- get ruleIndex(): number;
1399
- enterRule(listener: HamelinListener): void;
1400
- exitRule(listener: HamelinListener): void;
1401
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1402
- }
1403
- declare class MatchDefineContext extends antlr.ParserRuleContext {
1404
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1405
- simpleIdentifier(): SimpleIdentifierContext;
1406
- ASSIGN(): antlr.TerminalNode;
1407
- expression(): ExpressionContext;
1408
- get ruleIndex(): number;
1409
- enterRule(listener: HamelinListener): void;
1410
- exitRule(listener: HamelinListener): void;
1411
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1412
- }
1413
- declare class SelectionContext extends antlr.ParserRuleContext {
1414
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1415
- identifier(): IdentifierContext;
1416
- get ruleIndex(): number;
1417
- enterRule(listener: HamelinListener): void;
1418
- exitRule(listener: HamelinListener): void;
1419
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1420
- }
1421
- declare class SortExpressionContext extends antlr.ParserRuleContext {
1422
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1423
- expression(): ExpressionContext;
1424
- ASC(): antlr.TerminalNode | null;
1425
- DESC(): antlr.TerminalNode | null;
1426
- get ruleIndex(): number;
1427
- enterRule(listener: HamelinListener): void;
1428
- exitRule(listener: HamelinListener): void;
1429
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1430
- }
1431
- declare class TableAliasContext extends antlr.ParserRuleContext {
1432
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1433
- simpleIdentifier(): SimpleIdentifierContext;
1434
- ASSIGN(): antlr.TerminalNode;
1435
- tableReference(): TableReferenceContext;
1436
- get ruleIndex(): number;
1437
- enterRule(listener: HamelinListener): void;
1438
- exitRule(listener: HamelinListener): void;
1439
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1440
- }
1441
- declare class FromClauseContext extends antlr.ParserRuleContext {
1442
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1443
- tableAlias(): TableAliasContext | null;
1444
- tableReference(): TableReferenceContext | null;
1445
- get ruleIndex(): number;
1446
- enterRule(listener: HamelinListener): void;
1447
- exitRule(listener: HamelinListener): void;
1448
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1449
- }
1450
- declare class ExpressionContext extends antlr.ParserRuleContext {
1451
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1452
- get ruleIndex(): number;
1453
- copyFrom(ctx: ExpressionContext): void;
1454
- }
1455
- declare class StructLiteralContext extends ExpressionContext {
1456
- constructor(ctx: ExpressionContext);
1457
- LCURLY(): antlr.TerminalNode;
1458
- simpleIdentifier(): SimpleIdentifierContext[];
1459
- simpleIdentifier(i: number): SimpleIdentifierContext | null;
1460
- COLON(): antlr.TerminalNode[];
1461
- COLON(i: number): antlr.TerminalNode | null;
1462
- expression(): ExpressionContext[];
1463
- expression(i: number): ExpressionContext | null;
1464
- RCURLY(): antlr.TerminalNode;
1465
- COMMA(): antlr.TerminalNode[];
1466
- COMMA(i: number): antlr.TerminalNode | null;
1467
- enterRule(listener: HamelinListener): void;
1468
- exitRule(listener: HamelinListener): void;
1469
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1470
- }
1471
- declare class ColumnReferenceAltContext extends ExpressionContext {
1472
- constructor(ctx: ExpressionContext);
1473
- columnReference(): ColumnReferenceContext;
1474
- enterRule(listener: HamelinListener): void;
1475
- exitRule(listener: HamelinListener): void;
1476
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1477
- }
1478
- declare class DerefContext extends ExpressionContext {
1479
- _left?: ExpressionContext;
1480
- _operator?: Token | null;
1481
- _right?: SimpleIdentifierContext;
1482
- constructor(ctx: ExpressionContext);
1483
- expression(): ExpressionContext;
1484
- DOT(): antlr.TerminalNode;
1485
- simpleIdentifier(): SimpleIdentifierContext;
1486
- enterRule(listener: HamelinListener): void;
1487
- exitRule(listener: HamelinListener): void;
1488
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1489
- }
1490
- declare class NullLiteralContext extends ExpressionContext {
1491
- constructor(ctx: ExpressionContext);
1492
- NULL(): antlr.TerminalNode;
1493
- enterRule(listener: HamelinListener): void;
1494
- exitRule(listener: HamelinListener): void;
1495
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1496
- }
1497
- declare class ArrayLiteralContext extends ExpressionContext {
1498
- constructor(ctx: ExpressionContext);
1499
- LBRACKET(): antlr.TerminalNode;
1500
- RBRACKET(): antlr.TerminalNode;
1501
- expression(): ExpressionContext[];
1502
- expression(i: number): ExpressionContext | null;
1503
- COMMA(): antlr.TerminalNode[];
1504
- COMMA(i: number): antlr.TerminalNode | null;
1505
- enterRule(listener: HamelinListener): void;
1506
- exitRule(listener: HamelinListener): void;
1507
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1508
- }
1509
- declare class PairLiteralContext extends ExpressionContext {
1510
- _left?: ExpressionContext;
1511
- _operator?: Token | null;
1512
- _right?: ExpressionContext;
1513
- constructor(ctx: ExpressionContext);
1514
- expression(): ExpressionContext[];
1515
- expression(i: number): ExpressionContext | null;
1516
- COLON(): antlr.TerminalNode;
1517
- enterRule(listener: HamelinListener): void;
1518
- exitRule(listener: HamelinListener): void;
1519
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1520
- }
1521
- declare class TsTruncContext extends ExpressionContext {
1522
- constructor(ctx: ExpressionContext);
1523
- expression(): ExpressionContext;
1524
- SECOND_TRUNC(): antlr.TerminalNode | null;
1525
- MINUTE_TRUNC(): antlr.TerminalNode | null;
1526
- HOUR_TRUNC(): antlr.TerminalNode | null;
1527
- DAY_TRUNC(): antlr.TerminalNode | null;
1528
- WEEK_TRUNC(): antlr.TerminalNode | null;
1529
- MONTH_TRUNC(): antlr.TerminalNode | null;
1530
- QUARTER_TRUNC(): antlr.TerminalNode | null;
1531
- YEAR_TRUNC(): antlr.TerminalNode | null;
1532
- enterRule(listener: HamelinListener): void;
1533
- exitRule(listener: HamelinListener): void;
1534
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1535
- }
1536
- declare class RowsLiteralContext extends ExpressionContext {
1537
- constructor(ctx: ExpressionContext);
1538
- ROWS_LITERAL(): antlr.TerminalNode;
1539
- enterRule(listener: HamelinListener): void;
1540
- exitRule(listener: HamelinListener): void;
1541
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1542
- }
1543
- declare class TsTruncTimestampLiteralContext extends ExpressionContext {
1544
- constructor(ctx: ExpressionContext);
1545
- SECOND_TRUNC(): antlr.TerminalNode | null;
1546
- MINUTE_TRUNC(): antlr.TerminalNode | null;
1547
- HOUR_TRUNC(): antlr.TerminalNode | null;
1548
- DAY_TRUNC(): antlr.TerminalNode | null;
1549
- WEEK_TRUNC(): antlr.TerminalNode | null;
1550
- MONTH_TRUNC(): antlr.TerminalNode | null;
1551
- QUARTER_TRUNC(): antlr.TerminalNode | null;
1552
- YEAR_TRUNC(): antlr.TerminalNode | null;
1553
- enterRule(listener: HamelinListener): void;
1554
- exitRule(listener: HamelinListener): void;
1555
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1556
- }
1557
- declare class UnaryPrefixOperatorContext extends ExpressionContext {
1558
- _operator?: Token | null;
1559
- constructor(ctx: ExpressionContext);
1560
- expression(): ExpressionContext;
1561
- MINUS(): antlr.TerminalNode | null;
1562
- PLUS(): antlr.TerminalNode | null;
1563
- RANGE(): antlr.TerminalNode | null;
1564
- NOT(): antlr.TerminalNode | null;
1565
- enterRule(listener: HamelinListener): void;
1566
- exitRule(listener: HamelinListener): void;
1567
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1568
- }
1569
- declare class BinaryLiteralContext extends ExpressionContext {
1570
- constructor(ctx: ExpressionContext);
1571
- BINARY_LITERAL(): antlr.TerminalNode;
1572
- enterRule(listener: HamelinListener): void;
1573
- exitRule(listener: HamelinListener): void;
1574
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1575
- }
1576
- declare class IndexAccessContext extends ExpressionContext {
1577
- _value?: ExpressionContext;
1578
- _index?: ExpressionContext;
1579
- constructor(ctx: ExpressionContext);
1580
- LBRACKET(): antlr.TerminalNode;
1581
- RBRACKET(): antlr.TerminalNode;
1582
- expression(): ExpressionContext[];
1583
- expression(i: number): ExpressionContext | null;
1584
- enterRule(listener: HamelinListener): void;
1585
- exitRule(listener: HamelinListener): void;
1586
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1587
- }
1588
- declare class CastContext extends ExpressionContext {
1589
- _left?: ExpressionContext;
1590
- _operator?: Token | null;
1591
- _right?: HamelintypeContext;
1592
- constructor(ctx: ExpressionContext);
1593
- expression(): ExpressionContext;
1594
- AS(): antlr.TerminalNode;
1595
- hamelintype(): HamelintypeContext;
1596
- enterRule(listener: HamelinListener): void;
1597
- exitRule(listener: HamelinListener): void;
1598
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1599
- }
1600
- declare class UnaryPostfixOperatorContext extends ExpressionContext {
1601
- _operator?: Token | null;
1602
- constructor(ctx: ExpressionContext);
1603
- expression(): ExpressionContext;
1604
- RANGE(): antlr.TerminalNode;
1605
- enterRule(listener: HamelinListener): void;
1606
- exitRule(listener: HamelinListener): void;
1607
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1608
- }
1609
- declare class TupleLiteralContext extends ExpressionContext {
1610
- constructor(ctx: ExpressionContext);
1611
- LPARENS(): antlr.TerminalNode;
1612
- RPARENS(): antlr.TerminalNode;
1613
- expression(): ExpressionContext[];
1614
- expression(i: number): ExpressionContext | null;
1615
- COMMA(): antlr.TerminalNode[];
1616
- COMMA(i: number): antlr.TerminalNode | null;
1617
- enterRule(listener: HamelinListener): void;
1618
- exitRule(listener: HamelinListener): void;
1619
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1620
- }
1621
- declare class ParenthesizedExpressionContext extends ExpressionContext {
1622
- constructor(ctx: ExpressionContext);
1623
- LPARENS(): antlr.TerminalNode;
1624
- expression(): ExpressionContext;
1625
- RPARENS(): antlr.TerminalNode;
1626
- enterRule(listener: HamelinListener): void;
1627
- exitRule(listener: HamelinListener): void;
1628
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1629
- }
1630
- declare class StringLiteralContext extends ExpressionContext {
1631
- constructor(ctx: ExpressionContext);
1632
- string(): StringContext;
1633
- enterRule(listener: HamelinListener): void;
1634
- exitRule(listener: HamelinListener): void;
1635
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1636
- }
1637
- declare class BinaryOperatorContext extends ExpressionContext {
1638
- _left?: ExpressionContext;
1639
- _operator?: Token | null;
1640
- _right?: ExpressionContext;
1641
- constructor(ctx: ExpressionContext);
1642
- expression(): ExpressionContext[];
1643
- expression(i: number): ExpressionContext | null;
1644
- ASTERISK(): antlr.TerminalNode | null;
1645
- SLASH(): antlr.TerminalNode | null;
1646
- PERCENT(): antlr.TerminalNode | null;
1647
- PLUS(): antlr.TerminalNode | null;
1648
- MINUS(): antlr.TerminalNode | null;
1649
- RANGE(): antlr.TerminalNode | null;
1650
- EQ(): antlr.TerminalNode | null;
1651
- NEQ(): antlr.TerminalNode | null;
1652
- LT(): antlr.TerminalNode | null;
1653
- LTE(): antlr.TerminalNode | null;
1654
- GT(): antlr.TerminalNode | null;
1655
- GTE(): antlr.TerminalNode | null;
1656
- IS(): antlr.TerminalNode | null;
1657
- ISNOT(): antlr.TerminalNode | null;
1658
- IN(): antlr.TerminalNode | null;
1659
- NOTIN(): antlr.TerminalNode | null;
1660
- AND(): antlr.TerminalNode | null;
1661
- OR(): antlr.TerminalNode | null;
1662
- enterRule(listener: HamelinListener): void;
1663
- exitRule(listener: HamelinListener): void;
1664
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1665
- }
1666
- declare class FunctionCallContext extends ExpressionContext {
1667
- _functionName?: SimpleIdentifierContext;
1668
- constructor(ctx: ExpressionContext);
1669
- LPARENS(): antlr.TerminalNode;
1670
- RPARENS(): antlr.TerminalNode;
1671
- simpleIdentifier(): SimpleIdentifierContext;
1672
- namedArgument(): NamedArgumentContext[];
1673
- namedArgument(i: number): NamedArgumentContext | null;
1674
- COMMA(): antlr.TerminalNode[];
1675
- COMMA(i: number): antlr.TerminalNode | null;
1676
- positionalArgument(): PositionalArgumentContext[];
1677
- positionalArgument(i: number): PositionalArgumentContext | null;
1678
- enterRule(listener: HamelinListener): void;
1679
- exitRule(listener: HamelinListener): void;
1680
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1681
- }
1682
- declare class UnboundRangeLiteralContext extends ExpressionContext {
1683
- constructor(ctx: ExpressionContext);
1684
- RANGE(): antlr.TerminalNode;
1685
- enterRule(listener: HamelinListener): void;
1686
- exitRule(listener: HamelinListener): void;
1687
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1688
- }
1689
- declare class NumericLiteralContext extends ExpressionContext {
1690
- constructor(ctx: ExpressionContext);
1691
- number(): NumberContext;
1692
- enterRule(listener: HamelinListener): void;
1693
- exitRule(listener: HamelinListener): void;
1694
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1695
- }
1696
- declare class BooleanLiteralContext extends ExpressionContext {
1697
- constructor(ctx: ExpressionContext);
1698
- TRUE(): antlr.TerminalNode | null;
1699
- FALSE(): antlr.TerminalNode | null;
1700
- enterRule(listener: HamelinListener): void;
1701
- exitRule(listener: HamelinListener): void;
1702
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1703
- }
1704
- declare class IntervalLiteralContext extends ExpressionContext {
1705
- constructor(ctx: ExpressionContext);
1706
- NANOSECOND_INTERVAL(): antlr.TerminalNode | null;
1707
- MICROSECOND_INTERVAL(): antlr.TerminalNode | null;
1708
- MILLISECOND_INTERVAL(): antlr.TerminalNode | null;
1709
- SECOND_INTERVAL(): antlr.TerminalNode | null;
1710
- MINUTE_INTERVAL(): antlr.TerminalNode | null;
1711
- HOUR_INTERVAL(): antlr.TerminalNode | null;
1712
- DAY_INTERVAL(): antlr.TerminalNode | null;
1713
- WEEK_INTERVAL(): antlr.TerminalNode | null;
1714
- MONTH_INTERVAL(): antlr.TerminalNode | null;
1715
- QUARTER_INTERVAL(): antlr.TerminalNode | null;
1716
- YEAR_INTERVAL(): antlr.TerminalNode | null;
1717
- enterRule(listener: HamelinListener): void;
1718
- exitRule(listener: HamelinListener): void;
1719
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1720
- }
1721
- declare class HamelintypeContext extends antlr.ParserRuleContext {
1722
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1723
- get ruleIndex(): number;
1724
- copyFrom(ctx: HamelintypeContext): void;
1725
- }
1726
- declare class SimpleTypeContext extends HamelintypeContext {
1727
- constructor(ctx: HamelintypeContext);
1728
- simpleIdentifier(): SimpleIdentifierContext;
1729
- enterRule(listener: HamelinListener): void;
1730
- exitRule(listener: HamelinListener): void;
1731
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1732
- }
1733
- declare class TypeWithArgumentsContext extends HamelintypeContext {
1734
- constructor(ctx: HamelintypeContext);
1735
- simpleIdentifier(): SimpleIdentifierContext;
1736
- LPARENS(): antlr.TerminalNode;
1737
- INTEGER_VALUE(): antlr.TerminalNode[];
1738
- INTEGER_VALUE(i: number): antlr.TerminalNode | null;
1739
- RPARENS(): antlr.TerminalNode;
1740
- COMMA(): antlr.TerminalNode[];
1741
- COMMA(i: number): antlr.TerminalNode | null;
1742
- enterRule(listener: HamelinListener): void;
1743
- exitRule(listener: HamelinListener): void;
1744
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1745
- }
1746
- declare class StructTypeContext extends HamelintypeContext {
1747
- constructor(ctx: HamelintypeContext);
1748
- LCURLY(): antlr.TerminalNode;
1749
- simpleIdentifier(): SimpleIdentifierContext[];
1750
- simpleIdentifier(i: number): SimpleIdentifierContext | null;
1751
- COLON(): antlr.TerminalNode[];
1752
- COLON(i: number): antlr.TerminalNode | null;
1753
- hamelintype(): HamelintypeContext[];
1754
- hamelintype(i: number): HamelintypeContext | null;
1755
- RCURLY(): antlr.TerminalNode;
1756
- COMMA(): antlr.TerminalNode[];
1757
- COMMA(i: number): antlr.TerminalNode | null;
1758
- enterRule(listener: HamelinListener): void;
1759
- exitRule(listener: HamelinListener): void;
1760
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1761
- }
1762
- declare class TupleTypeContext extends HamelintypeContext {
1763
- constructor(ctx: HamelintypeContext);
1764
- LPARENS(): antlr.TerminalNode;
1765
- hamelintype(): HamelintypeContext[];
1766
- hamelintype(i: number): HamelintypeContext | null;
1767
- RPARENS(): antlr.TerminalNode;
1768
- COMMA(): antlr.TerminalNode[];
1769
- COMMA(i: number): antlr.TerminalNode | null;
1770
- enterRule(listener: HamelinListener): void;
1771
- exitRule(listener: HamelinListener): void;
1772
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1773
- }
1774
- declare class ParameterizedTypeContext extends HamelintypeContext {
1775
- constructor(ctx: HamelintypeContext);
1776
- simpleIdentifier(): SimpleIdentifierContext;
1777
- LPARENS(): antlr.TerminalNode;
1778
- hamelintype(): HamelintypeContext[];
1779
- hamelintype(i: number): HamelintypeContext | null;
1780
- RPARENS(): antlr.TerminalNode;
1781
- COMMA(): antlr.TerminalNode[];
1782
- COMMA(i: number): antlr.TerminalNode | null;
1783
- enterRule(listener: HamelinListener): void;
1784
- exitRule(listener: HamelinListener): void;
1785
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1786
- }
1787
- declare class PatternContext extends antlr.ParserRuleContext {
1788
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1789
- get ruleIndex(): number;
1790
- copyFrom(ctx: PatternContext): void;
1791
- }
1792
- declare class QuantifiedContext extends PatternContext {
1793
- constructor(ctx: PatternContext);
1794
- fromClause(): FromClauseContext;
1795
- quantifier(): QuantifierContext | null;
1796
- enterRule(listener: HamelinListener): void;
1797
- exitRule(listener: HamelinListener): void;
1798
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1799
- }
1800
- declare class NestedContext extends PatternContext {
1801
- constructor(ctx: PatternContext);
1802
- LPARENS(): antlr.TerminalNode;
1803
- RPARENS(): antlr.TerminalNode;
1804
- quantifier(): QuantifierContext;
1805
- pattern(): PatternContext[];
1806
- pattern(i: number): PatternContext | null;
1807
- enterRule(listener: HamelinListener): void;
1808
- exitRule(listener: HamelinListener): void;
1809
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1810
- }
1811
- declare class QuantifierContext extends antlr.ParserRuleContext {
1812
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1813
- get ruleIndex(): number;
1814
- copyFrom(ctx: QuantifierContext): void;
1815
- }
1816
- declare class AnyNumberContext extends QuantifierContext {
1817
- constructor(ctx: QuantifierContext);
1818
- ASTERISK(): antlr.TerminalNode;
1819
- enterRule(listener: HamelinListener): void;
1820
- exitRule(listener: HamelinListener): void;
1821
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1822
- }
1823
- declare class ExactlyContext extends QuantifierContext {
1824
- constructor(ctx: QuantifierContext);
1825
- LCURLY(): antlr.TerminalNode;
1826
- INTEGER_VALUE(): antlr.TerminalNode;
1827
- RCURLY(): antlr.TerminalNode;
1828
- enterRule(listener: HamelinListener): void;
1829
- exitRule(listener: HamelinListener): void;
1830
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1831
- }
1832
- declare class AtLeastOneContext extends QuantifierContext {
1833
- constructor(ctx: QuantifierContext);
1834
- PLUS(): antlr.TerminalNode;
1835
- enterRule(listener: HamelinListener): void;
1836
- exitRule(listener: HamelinListener): void;
1837
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1838
- }
1839
- declare class ZeroOrOneContext extends QuantifierContext {
1840
- constructor(ctx: QuantifierContext);
1841
- QUESTIONMARK(): antlr.TerminalNode;
1842
- enterRule(listener: HamelinListener): void;
1843
- exitRule(listener: HamelinListener): void;
1844
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1845
- }
1846
- declare class ColumnReferenceContext extends antlr.ParserRuleContext {
1847
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1848
- simpleIdentifier(): SimpleIdentifierContext;
1849
- get ruleIndex(): number;
1850
- enterRule(listener: HamelinListener): void;
1851
- exitRule(listener: HamelinListener): void;
1852
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1853
- }
1854
- declare class TableReferenceContext extends antlr.ParserRuleContext {
1855
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1856
- identifier(): IdentifierContext;
1857
- get ruleIndex(): number;
1858
- enterRule(listener: HamelinListener): void;
1859
- exitRule(listener: HamelinListener): void;
1860
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1861
- }
1862
- declare class IdentifierContext extends antlr.ParserRuleContext {
1863
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1864
- simpleIdentifier(): SimpleIdentifierContext[];
1865
- simpleIdentifier(i: number): SimpleIdentifierContext | null;
1866
- DOT(): antlr.TerminalNode[];
1867
- DOT(i: number): antlr.TerminalNode | null;
1868
- get ruleIndex(): number;
1869
- enterRule(listener: HamelinListener): void;
1870
- exitRule(listener: HamelinListener): void;
1871
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1872
- }
1873
- declare class SimpleIdentifierContext extends antlr.ParserRuleContext {
1874
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1875
- get ruleIndex(): number;
1876
- copyFrom(ctx: SimpleIdentifierContext): void;
1877
- }
1878
- declare class BackQuotedIdentifierContext extends SimpleIdentifierContext {
1879
- constructor(ctx: SimpleIdentifierContext);
1880
- BACKQUOTED_IDENTIFIER(): antlr.TerminalNode;
1881
- enterRule(listener: HamelinListener): void;
1882
- exitRule(listener: HamelinListener): void;
1883
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1884
- }
1885
- declare class UnquotedIdentifierContext extends SimpleIdentifierContext {
1886
- constructor(ctx: SimpleIdentifierContext);
1887
- IDENTIFIER(): antlr.TerminalNode;
1888
- enterRule(listener: HamelinListener): void;
1889
- exitRule(listener: HamelinListener): void;
1890
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1891
- }
1892
- declare class StringContext extends antlr.ParserRuleContext {
1893
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1894
- get ruleIndex(): number;
1895
- copyFrom(ctx: StringContext): void;
1896
- }
1897
- declare class BasicDoubleQuotedStringLiteralContext extends StringContext {
1898
- constructor(ctx: StringContext);
1899
- DOUBLE_QUOTED_STRING(): antlr.TerminalNode;
1900
- enterRule(listener: HamelinListener): void;
1901
- exitRule(listener: HamelinListener): void;
1902
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1903
- }
1904
- declare class UnicodeSingleQuotedStringLiteralContext extends StringContext {
1905
- _value?: Token | null;
1906
- _uesc?: Token | null;
1907
- constructor(ctx: StringContext);
1908
- SINGLE_QUOTED_UNICODE_STRING(): antlr.TerminalNode;
1909
- UESCAPE(): antlr.TerminalNode | null;
1910
- SINGLE_QUOTED_STRING(): antlr.TerminalNode | null;
1911
- enterRule(listener: HamelinListener): void;
1912
- exitRule(listener: HamelinListener): void;
1913
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1914
- }
1915
- declare class BasicSingleQuotedStringLiteralContext extends StringContext {
1916
- constructor(ctx: StringContext);
1917
- SINGLE_QUOTED_STRING(): antlr.TerminalNode;
1918
- enterRule(listener: HamelinListener): void;
1919
- exitRule(listener: HamelinListener): void;
1920
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1921
- }
1922
- declare class UnicodeDoubleQuotedStringLiteralContext extends StringContext {
1923
- _value?: Token | null;
1924
- _uesc?: Token | null;
1925
- constructor(ctx: StringContext);
1926
- DOUBLE_QUOTED_UNICODE_STRING(): antlr.TerminalNode;
1927
- UESCAPE(): antlr.TerminalNode | null;
1928
- DOUBLE_QUOTED_STRING(): antlr.TerminalNode | null;
1929
- enterRule(listener: HamelinListener): void;
1930
- exitRule(listener: HamelinListener): void;
1931
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1932
- }
1933
- declare class NumberContext extends antlr.ParserRuleContext {
1934
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1935
- get ruleIndex(): number;
1936
- copyFrom(ctx: NumberContext): void;
1937
- }
1938
- declare class DecimalLiteralContext extends NumberContext {
1939
- _value?: Token | null;
1940
- constructor(ctx: NumberContext);
1941
- DECIMAL_VALUE(): antlr.TerminalNode;
1942
- enterRule(listener: HamelinListener): void;
1943
- exitRule(listener: HamelinListener): void;
1944
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1945
- }
1946
- declare class ScientificLiteralContext extends NumberContext {
1947
- _value?: Token | null;
1948
- constructor(ctx: NumberContext);
1949
- DOUBLE_VALUE(): antlr.TerminalNode;
1950
- enterRule(listener: HamelinListener): void;
1951
- exitRule(listener: HamelinListener): void;
1952
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1953
- }
1954
- declare class IntegerLiteralContext extends NumberContext {
1955
- _value?: Token | null;
1956
- constructor(ctx: NumberContext);
1957
- INTEGER_VALUE(): antlr.TerminalNode;
1958
- enterRule(listener: HamelinListener): void;
1959
- exitRule(listener: HamelinListener): void;
1960
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1961
- }
1962
- declare class PositionalArgumentContext extends antlr.ParserRuleContext {
1963
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1964
- expression(): ExpressionContext;
1965
- get ruleIndex(): number;
1966
- enterRule(listener: HamelinListener): void;
1967
- exitRule(listener: HamelinListener): void;
1968
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1969
- }
1970
- declare class NamedArgumentContext extends antlr.ParserRuleContext {
1971
- constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
1972
- simpleIdentifier(): SimpleIdentifierContext;
1973
- ASSIGN(): antlr.TerminalNode;
1974
- expression(): ExpressionContext;
1975
- get ruleIndex(): number;
1976
- enterRule(listener: HamelinListener): void;
1977
- exitRule(listener: HamelinListener): void;
1978
- accept<Result>(visitor: HamelinVisitor<Result>): Result | null;
1979
- }
1980
-
1981
- /**
1982
- * This interface defines a complete listener for a parse tree produced by
1983
- * `HamelinParser`.
1984
- */
1985
- declare class HamelinListener implements ParseTreeListener {
1986
- /**
1987
- * Enter a parse tree produced by `HamelinParser.identifierEOF`.
1988
- * @param ctx the parse tree
1989
- */
1990
- enterIdentifierEOF?: (ctx: IdentifierEOFContext) => void;
1991
- /**
1992
- * Exit a parse tree produced by `HamelinParser.identifierEOF`.
1993
- * @param ctx the parse tree
1994
- */
1995
- exitIdentifierEOF?: (ctx: IdentifierEOFContext) => void;
1996
- /**
1997
- * Enter a parse tree produced by `HamelinParser.queryEOF`.
1998
- * @param ctx the parse tree
1999
- */
2000
- enterQueryEOF?: (ctx: QueryEOFContext) => void;
2001
- /**
2002
- * Exit a parse tree produced by `HamelinParser.queryEOF`.
2003
- * @param ctx the parse tree
2004
- */
2005
- exitQueryEOF?: (ctx: QueryEOFContext) => void;
2006
- /**
2007
- * Enter a parse tree produced by `HamelinParser.commandEOF`.
2008
- * @param ctx the parse tree
2009
- */
2010
- enterCommandEOF?: (ctx: CommandEOFContext) => void;
2011
- /**
2012
- * Exit a parse tree produced by `HamelinParser.commandEOF`.
2013
- * @param ctx the parse tree
2014
- */
2015
- exitCommandEOF?: (ctx: CommandEOFContext) => void;
2016
- /**
2017
- * Enter a parse tree produced by `HamelinParser.expressionEOF`.
2018
- * @param ctx the parse tree
2019
- */
2020
- enterExpressionEOF?: (ctx: ExpressionEOFContext) => void;
2021
- /**
2022
- * Exit a parse tree produced by `HamelinParser.expressionEOF`.
2023
- * @param ctx the parse tree
2024
- */
2025
- exitExpressionEOF?: (ctx: ExpressionEOFContext) => void;
2026
- /**
2027
- * Enter a parse tree produced by `HamelinParser.pipelineEOF`.
2028
- * @param ctx the parse tree
2029
- */
2030
- enterPipelineEOF?: (ctx: PipelineEOFContext) => void;
2031
- /**
2032
- * Exit a parse tree produced by `HamelinParser.pipelineEOF`.
2033
- * @param ctx the parse tree
2034
- */
2035
- exitPipelineEOF?: (ctx: PipelineEOFContext) => void;
2036
- /**
2037
- * Enter a parse tree produced by `HamelinParser.simpleIdentifierEOF`.
2038
- * @param ctx the parse tree
2039
- */
2040
- enterSimpleIdentifierEOF?: (ctx: SimpleIdentifierEOFContext) => void;
2041
- /**
2042
- * Exit a parse tree produced by `HamelinParser.simpleIdentifierEOF`.
2043
- * @param ctx the parse tree
2044
- */
2045
- exitSimpleIdentifierEOF?: (ctx: SimpleIdentifierEOFContext) => void;
2046
- /**
2047
- * Enter a parse tree produced by the `withQuery`
2048
- * labeled alternative in `HamelinParser.query`.
2049
- * @param ctx the parse tree
2050
- */
2051
- enterWithQuery?: (ctx: WithQueryContext) => void;
2052
- /**
2053
- * Exit a parse tree produced by the `withQuery`
2054
- * labeled alternative in `HamelinParser.query`.
2055
- * @param ctx the parse tree
2056
- */
2057
- exitWithQuery?: (ctx: WithQueryContext) => void;
2058
- /**
2059
- * Enter a parse tree produced by the `standaloneQuery`
2060
- * labeled alternative in `HamelinParser.query`.
2061
- * @param ctx the parse tree
2062
- */
2063
- enterStandaloneQuery?: (ctx: StandaloneQueryContext) => void;
2064
- /**
2065
- * Exit a parse tree produced by the `standaloneQuery`
2066
- * labeled alternative in `HamelinParser.query`.
2067
- * @param ctx the parse tree
2068
- */
2069
- exitStandaloneQuery?: (ctx: StandaloneQueryContext) => void;
2070
- /**
2071
- * Enter a parse tree produced by the `expressionQuery`
2072
- * labeled alternative in `HamelinParser.query`.
2073
- * @param ctx the parse tree
2074
- */
2075
- enterExpressionQuery?: (ctx: ExpressionQueryContext) => void;
2076
- /**
2077
- * Exit a parse tree produced by the `expressionQuery`
2078
- * labeled alternative in `HamelinParser.query`.
2079
- * @param ctx the parse tree
2080
- */
2081
- exitExpressionQuery?: (ctx: ExpressionQueryContext) => void;
2082
- /**
2083
- * Enter a parse tree produced by the `pipelineAlt`
2084
- * labeled alternative in `HamelinParser.pipeline`.
2085
- * @param ctx the parse tree
2086
- */
2087
- enterPipelineAlt?: (ctx: PipelineAltContext) => void;
2088
- /**
2089
- * Exit a parse tree produced by the `pipelineAlt`
2090
- * labeled alternative in `HamelinParser.pipeline`.
2091
- * @param ctx the parse tree
2092
- */
2093
- exitPipelineAlt?: (ctx: PipelineAltContext) => void;
2094
- /**
2095
- * Enter a parse tree produced by the `letCommand`
2096
- * labeled alternative in `HamelinParser.command`.
2097
- * @param ctx the parse tree
2098
- */
2099
- enterLetCommand?: (ctx: LetCommandContext) => void;
2100
- /**
2101
- * Exit a parse tree produced by the `letCommand`
2102
- * labeled alternative in `HamelinParser.command`.
2103
- * @param ctx the parse tree
2104
- */
2105
- exitLetCommand?: (ctx: LetCommandContext) => void;
2106
- /**
2107
- * Enter a parse tree produced by the `whereCommand`
2108
- * labeled alternative in `HamelinParser.command`.
2109
- * @param ctx the parse tree
2110
- */
2111
- enterWhereCommand?: (ctx: WhereCommandContext) => void;
2112
- /**
2113
- * Exit a parse tree produced by the `whereCommand`
2114
- * labeled alternative in `HamelinParser.command`.
2115
- * @param ctx the parse tree
2116
- */
2117
- exitWhereCommand?: (ctx: WhereCommandContext) => void;
2118
- /**
2119
- * Enter a parse tree produced by the `selectCommand`
2120
- * labeled alternative in `HamelinParser.command`.
2121
- * @param ctx the parse tree
2122
- */
2123
- enterSelectCommand?: (ctx: SelectCommandContext) => void;
2124
- /**
2125
- * Exit a parse tree produced by the `selectCommand`
2126
- * labeled alternative in `HamelinParser.command`.
2127
- * @param ctx the parse tree
2128
- */
2129
- exitSelectCommand?: (ctx: SelectCommandContext) => void;
2130
- /**
2131
- * Enter a parse tree produced by the `dropCommand`
2132
- * labeled alternative in `HamelinParser.command`.
2133
- * @param ctx the parse tree
2134
- */
2135
- enterDropCommand?: (ctx: DropCommandContext) => void;
2136
- /**
2137
- * Exit a parse tree produced by the `dropCommand`
2138
- * labeled alternative in `HamelinParser.command`.
2139
- * @param ctx the parse tree
2140
- */
2141
- exitDropCommand?: (ctx: DropCommandContext) => void;
2142
- /**
2143
- * Enter a parse tree produced by the `fromCommand`
2144
- * labeled alternative in `HamelinParser.command`.
2145
- * @param ctx the parse tree
2146
- */
2147
- enterFromCommand?: (ctx: FromCommandContext) => void;
2148
- /**
2149
- * Exit a parse tree produced by the `fromCommand`
2150
- * labeled alternative in `HamelinParser.command`.
2151
- * @param ctx the parse tree
2152
- */
2153
- exitFromCommand?: (ctx: FromCommandContext) => void;
2154
- /**
2155
- * Enter a parse tree produced by the `unionCommand`
2156
- * labeled alternative in `HamelinParser.command`.
2157
- * @param ctx the parse tree
2158
- */
2159
- enterUnionCommand?: (ctx: UnionCommandContext) => void;
2160
- /**
2161
- * Exit a parse tree produced by the `unionCommand`
2162
- * labeled alternative in `HamelinParser.command`.
2163
- * @param ctx the parse tree
2164
- */
2165
- exitUnionCommand?: (ctx: UnionCommandContext) => void;
2166
- /**
2167
- * Enter a parse tree produced by the `limitCommand`
2168
- * labeled alternative in `HamelinParser.command`.
2169
- * @param ctx the parse tree
2170
- */
2171
- enterLimitCommand?: (ctx: LimitCommandContext) => void;
2172
- /**
2173
- * Exit a parse tree produced by the `limitCommand`
2174
- * labeled alternative in `HamelinParser.command`.
2175
- * @param ctx the parse tree
2176
- */
2177
- exitLimitCommand?: (ctx: LimitCommandContext) => void;
2178
- /**
2179
- * Enter a parse tree produced by the `parseCommand`
2180
- * labeled alternative in `HamelinParser.command`.
2181
- * @param ctx the parse tree
2182
- */
2183
- enterParseCommand?: (ctx: ParseCommandContext) => void;
2184
- /**
2185
- * Exit a parse tree produced by the `parseCommand`
2186
- * labeled alternative in `HamelinParser.command`.
2187
- * @param ctx the parse tree
2188
- */
2189
- exitParseCommand?: (ctx: ParseCommandContext) => void;
2190
- /**
2191
- * Enter a parse tree produced by the `withinCommand`
2192
- * labeled alternative in `HamelinParser.command`.
2193
- * @param ctx the parse tree
2194
- */
2195
- enterWithinCommand?: (ctx: WithinCommandContext) => void;
2196
- /**
2197
- * Exit a parse tree produced by the `withinCommand`
2198
- * labeled alternative in `HamelinParser.command`.
2199
- * @param ctx the parse tree
2200
- */
2201
- exitWithinCommand?: (ctx: WithinCommandContext) => void;
2202
- /**
2203
- * Enter a parse tree produced by the `aggCommand`
2204
- * labeled alternative in `HamelinParser.command`.
2205
- * @param ctx the parse tree
2206
- */
2207
- enterAggCommand?: (ctx: AggCommandContext) => void;
2208
- /**
2209
- * Exit a parse tree produced by the `aggCommand`
2210
- * labeled alternative in `HamelinParser.command`.
2211
- * @param ctx the parse tree
2212
- */
2213
- exitAggCommand?: (ctx: AggCommandContext) => void;
2214
- /**
2215
- * Enter a parse tree produced by the `sortCommand`
2216
- * labeled alternative in `HamelinParser.command`.
2217
- * @param ctx the parse tree
2218
- */
2219
- enterSortCommand?: (ctx: SortCommandContext) => void;
2220
- /**
2221
- * Exit a parse tree produced by the `sortCommand`
2222
- * labeled alternative in `HamelinParser.command`.
2223
- * @param ctx the parse tree
2224
- */
2225
- exitSortCommand?: (ctx: SortCommandContext) => void;
2226
- /**
2227
- * Enter a parse tree produced by the `windowCommand`
2228
- * labeled alternative in `HamelinParser.command`.
2229
- * @param ctx the parse tree
2230
- */
2231
- enterWindowCommand?: (ctx: WindowCommandContext) => void;
2232
- /**
2233
- * Exit a parse tree produced by the `windowCommand`
2234
- * labeled alternative in `HamelinParser.command`.
2235
- * @param ctx the parse tree
2236
- */
2237
- exitWindowCommand?: (ctx: WindowCommandContext) => void;
2238
- /**
2239
- * Enter a parse tree produced by the `appendCommand`
2240
- * labeled alternative in `HamelinParser.command`.
2241
- * @param ctx the parse tree
2242
- */
2243
- enterAppendCommand?: (ctx: AppendCommandContext) => void;
2244
- /**
2245
- * Exit a parse tree produced by the `appendCommand`
2246
- * labeled alternative in `HamelinParser.command`.
2247
- * @param ctx the parse tree
2248
- */
2249
- exitAppendCommand?: (ctx: AppendCommandContext) => void;
2250
- /**
2251
- * Enter a parse tree produced by the `joinCommand`
2252
- * labeled alternative in `HamelinParser.command`.
2253
- * @param ctx the parse tree
2254
- */
2255
- enterJoinCommand?: (ctx: JoinCommandContext) => void;
2256
- /**
2257
- * Exit a parse tree produced by the `joinCommand`
2258
- * labeled alternative in `HamelinParser.command`.
2259
- * @param ctx the parse tree
2260
- */
2261
- exitJoinCommand?: (ctx: JoinCommandContext) => void;
2262
- /**
2263
- * Enter a parse tree produced by the `explodeCommand`
2264
- * labeled alternative in `HamelinParser.command`.
2265
- * @param ctx the parse tree
2266
- */
2267
- enterExplodeCommand?: (ctx: ExplodeCommandContext) => void;
2268
- /**
2269
- * Exit a parse tree produced by the `explodeCommand`
2270
- * labeled alternative in `HamelinParser.command`.
2271
- * @param ctx the parse tree
2272
- */
2273
- exitExplodeCommand?: (ctx: ExplodeCommandContext) => void;
2274
- /**
2275
- * Enter a parse tree produced by the `unnestCommand`
2276
- * labeled alternative in `HamelinParser.command`.
2277
- * @param ctx the parse tree
2278
- */
2279
- enterUnnestCommand?: (ctx: UnnestCommandContext) => void;
2280
- /**
2281
- * Exit a parse tree produced by the `unnestCommand`
2282
- * labeled alternative in `HamelinParser.command`.
2283
- * @param ctx the parse tree
2284
- */
2285
- exitUnnestCommand?: (ctx: UnnestCommandContext) => void;
2286
- /**
2287
- * Enter a parse tree produced by the `nestCommand`
2288
- * labeled alternative in `HamelinParser.command`.
2289
- * @param ctx the parse tree
2290
- */
2291
- enterNestCommand?: (ctx: NestCommandContext) => void;
2292
- /**
2293
- * Exit a parse tree produced by the `nestCommand`
2294
- * labeled alternative in `HamelinParser.command`.
2295
- * @param ctx the parse tree
2296
- */
2297
- exitNestCommand?: (ctx: NestCommandContext) => void;
2298
- /**
2299
- * Enter a parse tree produced by the `matchCommand`
2300
- * labeled alternative in `HamelinParser.command`.
2301
- * @param ctx the parse tree
2302
- */
2303
- enterMatchCommand?: (ctx: MatchCommandContext) => void;
2304
- /**
2305
- * Exit a parse tree produced by the `matchCommand`
2306
- * labeled alternative in `HamelinParser.command`.
2307
- * @param ctx the parse tree
2308
- */
2309
- exitMatchCommand?: (ctx: MatchCommandContext) => void;
2310
- /**
2311
- * Enter a parse tree produced by `HamelinParser.assignmentClause`.
2312
- * @param ctx the parse tree
2313
- */
2314
- enterAssignmentClause?: (ctx: AssignmentClauseContext) => void;
2315
- /**
2316
- * Exit a parse tree produced by `HamelinParser.assignmentClause`.
2317
- * @param ctx the parse tree
2318
- */
2319
- exitAssignmentClause?: (ctx: AssignmentClauseContext) => void;
2320
- /**
2321
- * Enter a parse tree produced by `HamelinParser.groupClause`.
2322
- * @param ctx the parse tree
2323
- */
2324
- enterGroupClause?: (ctx: GroupClauseContext) => void;
2325
- /**
2326
- * Exit a parse tree produced by `HamelinParser.groupClause`.
2327
- * @param ctx the parse tree
2328
- */
2329
- exitGroupClause?: (ctx: GroupClauseContext) => void;
2330
- /**
2331
- * Enter a parse tree produced by `HamelinParser.assignment`.
2332
- * @param ctx the parse tree
2333
- */
2334
- enterAssignment?: (ctx: AssignmentContext) => void;
2335
- /**
2336
- * Exit a parse tree produced by `HamelinParser.assignment`.
2337
- * @param ctx the parse tree
2338
- */
2339
- exitAssignment?: (ctx: AssignmentContext) => void;
2340
- /**
2341
- * Enter a parse tree produced by `HamelinParser.matchDefine`.
2342
- * @param ctx the parse tree
2343
- */
2344
- enterMatchDefine?: (ctx: MatchDefineContext) => void;
2345
- /**
2346
- * Exit a parse tree produced by `HamelinParser.matchDefine`.
2347
- * @param ctx the parse tree
2348
- */
2349
- exitMatchDefine?: (ctx: MatchDefineContext) => void;
2350
- /**
2351
- * Enter a parse tree produced by `HamelinParser.selection`.
2352
- * @param ctx the parse tree
2353
- */
2354
- enterSelection?: (ctx: SelectionContext) => void;
2355
- /**
2356
- * Exit a parse tree produced by `HamelinParser.selection`.
2357
- * @param ctx the parse tree
2358
- */
2359
- exitSelection?: (ctx: SelectionContext) => void;
2360
- /**
2361
- * Enter a parse tree produced by `HamelinParser.sortExpression`.
2362
- * @param ctx the parse tree
2363
- */
2364
- enterSortExpression?: (ctx: SortExpressionContext) => void;
2365
- /**
2366
- * Exit a parse tree produced by `HamelinParser.sortExpression`.
2367
- * @param ctx the parse tree
2368
- */
2369
- exitSortExpression?: (ctx: SortExpressionContext) => void;
2370
- /**
2371
- * Enter a parse tree produced by `HamelinParser.tableAlias`.
2372
- * @param ctx the parse tree
2373
- */
2374
- enterTableAlias?: (ctx: TableAliasContext) => void;
2375
- /**
2376
- * Exit a parse tree produced by `HamelinParser.tableAlias`.
2377
- * @param ctx the parse tree
2378
- */
2379
- exitTableAlias?: (ctx: TableAliasContext) => void;
2380
- /**
2381
- * Enter a parse tree produced by `HamelinParser.fromClause`.
2382
- * @param ctx the parse tree
2383
- */
2384
- enterFromClause?: (ctx: FromClauseContext) => void;
2385
- /**
2386
- * Exit a parse tree produced by `HamelinParser.fromClause`.
2387
- * @param ctx the parse tree
2388
- */
2389
- exitFromClause?: (ctx: FromClauseContext) => void;
2390
- /**
2391
- * Enter a parse tree produced by the `structLiteral`
2392
- * labeled alternative in `HamelinParser.expression`.
2393
- * @param ctx the parse tree
2394
- */
2395
- enterStructLiteral?: (ctx: StructLiteralContext) => void;
2396
- /**
2397
- * Exit a parse tree produced by the `structLiteral`
2398
- * labeled alternative in `HamelinParser.expression`.
2399
- * @param ctx the parse tree
2400
- */
2401
- exitStructLiteral?: (ctx: StructLiteralContext) => void;
2402
- /**
2403
- * Enter a parse tree produced by the `columnReferenceAlt`
2404
- * labeled alternative in `HamelinParser.expression`.
2405
- * @param ctx the parse tree
2406
- */
2407
- enterColumnReferenceAlt?: (ctx: ColumnReferenceAltContext) => void;
2408
- /**
2409
- * Exit a parse tree produced by the `columnReferenceAlt`
2410
- * labeled alternative in `HamelinParser.expression`.
2411
- * @param ctx the parse tree
2412
- */
2413
- exitColumnReferenceAlt?: (ctx: ColumnReferenceAltContext) => void;
2414
- /**
2415
- * Enter a parse tree produced by the `deref`
2416
- * labeled alternative in `HamelinParser.expression`.
2417
- * @param ctx the parse tree
2418
- */
2419
- enterDeref?: (ctx: DerefContext) => void;
2420
- /**
2421
- * Exit a parse tree produced by the `deref`
2422
- * labeled alternative in `HamelinParser.expression`.
2423
- * @param ctx the parse tree
2424
- */
2425
- exitDeref?: (ctx: DerefContext) => void;
2426
- /**
2427
- * Enter a parse tree produced by the `nullLiteral`
2428
- * labeled alternative in `HamelinParser.expression`.
2429
- * @param ctx the parse tree
2430
- */
2431
- enterNullLiteral?: (ctx: NullLiteralContext) => void;
2432
- /**
2433
- * Exit a parse tree produced by the `nullLiteral`
2434
- * labeled alternative in `HamelinParser.expression`.
2435
- * @param ctx the parse tree
2436
- */
2437
- exitNullLiteral?: (ctx: NullLiteralContext) => void;
2438
- /**
2439
- * Enter a parse tree produced by the `arrayLiteral`
2440
- * labeled alternative in `HamelinParser.expression`.
2441
- * @param ctx the parse tree
2442
- */
2443
- enterArrayLiteral?: (ctx: ArrayLiteralContext) => void;
2444
- /**
2445
- * Exit a parse tree produced by the `arrayLiteral`
2446
- * labeled alternative in `HamelinParser.expression`.
2447
- * @param ctx the parse tree
2448
- */
2449
- exitArrayLiteral?: (ctx: ArrayLiteralContext) => void;
2450
- /**
2451
- * Enter a parse tree produced by the `pairLiteral`
2452
- * labeled alternative in `HamelinParser.expression`.
2453
- * @param ctx the parse tree
2454
- */
2455
- enterPairLiteral?: (ctx: PairLiteralContext) => void;
2456
- /**
2457
- * Exit a parse tree produced by the `pairLiteral`
2458
- * labeled alternative in `HamelinParser.expression`.
2459
- * @param ctx the parse tree
2460
- */
2461
- exitPairLiteral?: (ctx: PairLiteralContext) => void;
2462
- /**
2463
- * Enter a parse tree produced by the `tsTrunc`
2464
- * labeled alternative in `HamelinParser.expression`.
2465
- * @param ctx the parse tree
2466
- */
2467
- enterTsTrunc?: (ctx: TsTruncContext) => void;
2468
- /**
2469
- * Exit a parse tree produced by the `tsTrunc`
2470
- * labeled alternative in `HamelinParser.expression`.
2471
- * @param ctx the parse tree
2472
- */
2473
- exitTsTrunc?: (ctx: TsTruncContext) => void;
2474
- /**
2475
- * Enter a parse tree produced by the `rowsLiteral`
2476
- * labeled alternative in `HamelinParser.expression`.
2477
- * @param ctx the parse tree
2478
- */
2479
- enterRowsLiteral?: (ctx: RowsLiteralContext) => void;
2480
- /**
2481
- * Exit a parse tree produced by the `rowsLiteral`
2482
- * labeled alternative in `HamelinParser.expression`.
2483
- * @param ctx the parse tree
2484
- */
2485
- exitRowsLiteral?: (ctx: RowsLiteralContext) => void;
2486
- /**
2487
- * Enter a parse tree produced by the `tsTruncTimestampLiteral`
2488
- * labeled alternative in `HamelinParser.expression`.
2489
- * @param ctx the parse tree
2490
- */
2491
- enterTsTruncTimestampLiteral?: (ctx: TsTruncTimestampLiteralContext) => void;
2492
- /**
2493
- * Exit a parse tree produced by the `tsTruncTimestampLiteral`
2494
- * labeled alternative in `HamelinParser.expression`.
2495
- * @param ctx the parse tree
2496
- */
2497
- exitTsTruncTimestampLiteral?: (ctx: TsTruncTimestampLiteralContext) => void;
2498
- /**
2499
- * Enter a parse tree produced by the `unaryPrefixOperator`
2500
- * labeled alternative in `HamelinParser.expression`.
2501
- * @param ctx the parse tree
2502
- */
2503
- enterUnaryPrefixOperator?: (ctx: UnaryPrefixOperatorContext) => void;
2504
- /**
2505
- * Exit a parse tree produced by the `unaryPrefixOperator`
2506
- * labeled alternative in `HamelinParser.expression`.
2507
- * @param ctx the parse tree
2508
- */
2509
- exitUnaryPrefixOperator?: (ctx: UnaryPrefixOperatorContext) => void;
2510
- /**
2511
- * Enter a parse tree produced by the `binaryLiteral`
2512
- * labeled alternative in `HamelinParser.expression`.
2513
- * @param ctx the parse tree
2514
- */
2515
- enterBinaryLiteral?: (ctx: BinaryLiteralContext) => void;
2516
- /**
2517
- * Exit a parse tree produced by the `binaryLiteral`
2518
- * labeled alternative in `HamelinParser.expression`.
2519
- * @param ctx the parse tree
2520
- */
2521
- exitBinaryLiteral?: (ctx: BinaryLiteralContext) => void;
2522
- /**
2523
- * Enter a parse tree produced by the `indexAccess`
2524
- * labeled alternative in `HamelinParser.expression`.
2525
- * @param ctx the parse tree
2526
- */
2527
- enterIndexAccess?: (ctx: IndexAccessContext) => void;
2528
- /**
2529
- * Exit a parse tree produced by the `indexAccess`
2530
- * labeled alternative in `HamelinParser.expression`.
2531
- * @param ctx the parse tree
2532
- */
2533
- exitIndexAccess?: (ctx: IndexAccessContext) => void;
2534
- /**
2535
- * Enter a parse tree produced by the `cast`
2536
- * labeled alternative in `HamelinParser.expression`.
2537
- * @param ctx the parse tree
2538
- */
2539
- enterCast?: (ctx: CastContext) => void;
2540
- /**
2541
- * Exit a parse tree produced by the `cast`
2542
- * labeled alternative in `HamelinParser.expression`.
2543
- * @param ctx the parse tree
2544
- */
2545
- exitCast?: (ctx: CastContext) => void;
2546
- /**
2547
- * Enter a parse tree produced by the `unaryPostfixOperator`
2548
- * labeled alternative in `HamelinParser.expression`.
2549
- * @param ctx the parse tree
2550
- */
2551
- enterUnaryPostfixOperator?: (ctx: UnaryPostfixOperatorContext) => void;
2552
- /**
2553
- * Exit a parse tree produced by the `unaryPostfixOperator`
2554
- * labeled alternative in `HamelinParser.expression`.
2555
- * @param ctx the parse tree
2556
- */
2557
- exitUnaryPostfixOperator?: (ctx: UnaryPostfixOperatorContext) => void;
2558
- /**
2559
- * Enter a parse tree produced by the `tupleLiteral`
2560
- * labeled alternative in `HamelinParser.expression`.
2561
- * @param ctx the parse tree
2562
- */
2563
- enterTupleLiteral?: (ctx: TupleLiteralContext) => void;
2564
- /**
2565
- * Exit a parse tree produced by the `tupleLiteral`
2566
- * labeled alternative in `HamelinParser.expression`.
2567
- * @param ctx the parse tree
2568
- */
2569
- exitTupleLiteral?: (ctx: TupleLiteralContext) => void;
2570
- /**
2571
- * Enter a parse tree produced by the `parenthesizedExpression`
2572
- * labeled alternative in `HamelinParser.expression`.
2573
- * @param ctx the parse tree
2574
- */
2575
- enterParenthesizedExpression?: (ctx: ParenthesizedExpressionContext) => void;
2576
- /**
2577
- * Exit a parse tree produced by the `parenthesizedExpression`
2578
- * labeled alternative in `HamelinParser.expression`.
2579
- * @param ctx the parse tree
2580
- */
2581
- exitParenthesizedExpression?: (ctx: ParenthesizedExpressionContext) => void;
2582
- /**
2583
- * Enter a parse tree produced by the `stringLiteral`
2584
- * labeled alternative in `HamelinParser.expression`.
2585
- * @param ctx the parse tree
2586
- */
2587
- enterStringLiteral?: (ctx: StringLiteralContext) => void;
2588
- /**
2589
- * Exit a parse tree produced by the `stringLiteral`
2590
- * labeled alternative in `HamelinParser.expression`.
2591
- * @param ctx the parse tree
2592
- */
2593
- exitStringLiteral?: (ctx: StringLiteralContext) => void;
2594
- /**
2595
- * Enter a parse tree produced by the `binaryOperator`
2596
- * labeled alternative in `HamelinParser.expression`.
2597
- * @param ctx the parse tree
2598
- */
2599
- enterBinaryOperator?: (ctx: BinaryOperatorContext) => void;
2600
- /**
2601
- * Exit a parse tree produced by the `binaryOperator`
2602
- * labeled alternative in `HamelinParser.expression`.
2603
- * @param ctx the parse tree
2604
- */
2605
- exitBinaryOperator?: (ctx: BinaryOperatorContext) => void;
2606
- /**
2607
- * Enter a parse tree produced by the `functionCall`
2608
- * labeled alternative in `HamelinParser.expression`.
2609
- * @param ctx the parse tree
2610
- */
2611
- enterFunctionCall?: (ctx: FunctionCallContext) => void;
2612
- /**
2613
- * Exit a parse tree produced by the `functionCall`
2614
- * labeled alternative in `HamelinParser.expression`.
2615
- * @param ctx the parse tree
2616
- */
2617
- exitFunctionCall?: (ctx: FunctionCallContext) => void;
2618
- /**
2619
- * Enter a parse tree produced by the `unboundRangeLiteral`
2620
- * labeled alternative in `HamelinParser.expression`.
2621
- * @param ctx the parse tree
2622
- */
2623
- enterUnboundRangeLiteral?: (ctx: UnboundRangeLiteralContext) => void;
2624
- /**
2625
- * Exit a parse tree produced by the `unboundRangeLiteral`
2626
- * labeled alternative in `HamelinParser.expression`.
2627
- * @param ctx the parse tree
2628
- */
2629
- exitUnboundRangeLiteral?: (ctx: UnboundRangeLiteralContext) => void;
2630
- /**
2631
- * Enter a parse tree produced by the `numericLiteral`
2632
- * labeled alternative in `HamelinParser.expression`.
2633
- * @param ctx the parse tree
2634
- */
2635
- enterNumericLiteral?: (ctx: NumericLiteralContext) => void;
2636
- /**
2637
- * Exit a parse tree produced by the `numericLiteral`
2638
- * labeled alternative in `HamelinParser.expression`.
2639
- * @param ctx the parse tree
2640
- */
2641
- exitNumericLiteral?: (ctx: NumericLiteralContext) => void;
2642
- /**
2643
- * Enter a parse tree produced by the `booleanLiteral`
2644
- * labeled alternative in `HamelinParser.expression`.
2645
- * @param ctx the parse tree
2646
- */
2647
- enterBooleanLiteral?: (ctx: BooleanLiteralContext) => void;
2648
- /**
2649
- * Exit a parse tree produced by the `booleanLiteral`
2650
- * labeled alternative in `HamelinParser.expression`.
2651
- * @param ctx the parse tree
2652
- */
2653
- exitBooleanLiteral?: (ctx: BooleanLiteralContext) => void;
2654
- /**
2655
- * Enter a parse tree produced by the `intervalLiteral`
2656
- * labeled alternative in `HamelinParser.expression`.
2657
- * @param ctx the parse tree
2658
- */
2659
- enterIntervalLiteral?: (ctx: IntervalLiteralContext) => void;
2660
- /**
2661
- * Exit a parse tree produced by the `intervalLiteral`
2662
- * labeled alternative in `HamelinParser.expression`.
2663
- * @param ctx the parse tree
2664
- */
2665
- exitIntervalLiteral?: (ctx: IntervalLiteralContext) => void;
2666
- /**
2667
- * Enter a parse tree produced by the `parameterizedType`
2668
- * labeled alternative in `HamelinParser.hamelintype`.
2669
- * @param ctx the parse tree
2670
- */
2671
- enterParameterizedType?: (ctx: ParameterizedTypeContext) => void;
2672
- /**
2673
- * Exit a parse tree produced by the `parameterizedType`
2674
- * labeled alternative in `HamelinParser.hamelintype`.
2675
- * @param ctx the parse tree
2676
- */
2677
- exitParameterizedType?: (ctx: ParameterizedTypeContext) => void;
2678
- /**
2679
- * Enter a parse tree produced by the `typeWithArguments`
2680
- * labeled alternative in `HamelinParser.hamelintype`.
2681
- * @param ctx the parse tree
2682
- */
2683
- enterTypeWithArguments?: (ctx: TypeWithArgumentsContext) => void;
2684
- /**
2685
- * Exit a parse tree produced by the `typeWithArguments`
2686
- * labeled alternative in `HamelinParser.hamelintype`.
2687
- * @param ctx the parse tree
2688
- */
2689
- exitTypeWithArguments?: (ctx: TypeWithArgumentsContext) => void;
2690
- /**
2691
- * Enter a parse tree produced by the `structType`
2692
- * labeled alternative in `HamelinParser.hamelintype`.
2693
- * @param ctx the parse tree
2694
- */
2695
- enterStructType?: (ctx: StructTypeContext) => void;
2696
- /**
2697
- * Exit a parse tree produced by the `structType`
2698
- * labeled alternative in `HamelinParser.hamelintype`.
2699
- * @param ctx the parse tree
2700
- */
2701
- exitStructType?: (ctx: StructTypeContext) => void;
2702
- /**
2703
- * Enter a parse tree produced by the `tupleType`
2704
- * labeled alternative in `HamelinParser.hamelintype`.
2705
- * @param ctx the parse tree
2706
- */
2707
- enterTupleType?: (ctx: TupleTypeContext) => void;
2708
- /**
2709
- * Exit a parse tree produced by the `tupleType`
2710
- * labeled alternative in `HamelinParser.hamelintype`.
2711
- * @param ctx the parse tree
2712
- */
2713
- exitTupleType?: (ctx: TupleTypeContext) => void;
2714
- /**
2715
- * Enter a parse tree produced by the `simpleType`
2716
- * labeled alternative in `HamelinParser.hamelintype`.
2717
- * @param ctx the parse tree
2718
- */
2719
- enterSimpleType?: (ctx: SimpleTypeContext) => void;
2720
- /**
2721
- * Exit a parse tree produced by the `simpleType`
2722
- * labeled alternative in `HamelinParser.hamelintype`.
2723
- * @param ctx the parse tree
2724
- */
2725
- exitSimpleType?: (ctx: SimpleTypeContext) => void;
2726
- /**
2727
- * Enter a parse tree produced by the `quantified`
2728
- * labeled alternative in `HamelinParser.pattern`.
2729
- * @param ctx the parse tree
2730
- */
2731
- enterQuantified?: (ctx: QuantifiedContext) => void;
2732
- /**
2733
- * Exit a parse tree produced by the `quantified`
2734
- * labeled alternative in `HamelinParser.pattern`.
2735
- * @param ctx the parse tree
2736
- */
2737
- exitQuantified?: (ctx: QuantifiedContext) => void;
2738
- /**
2739
- * Enter a parse tree produced by the `nested`
2740
- * labeled alternative in `HamelinParser.pattern`.
2741
- * @param ctx the parse tree
2742
- */
2743
- enterNested?: (ctx: NestedContext) => void;
2744
- /**
2745
- * Exit a parse tree produced by the `nested`
2746
- * labeled alternative in `HamelinParser.pattern`.
2747
- * @param ctx the parse tree
2748
- */
2749
- exitNested?: (ctx: NestedContext) => void;
2750
- /**
2751
- * Enter a parse tree produced by the `AnyNumber`
2752
- * labeled alternative in `HamelinParser.quantifier`.
2753
- * @param ctx the parse tree
2754
- */
2755
- enterAnyNumber?: (ctx: AnyNumberContext) => void;
2756
- /**
2757
- * Exit a parse tree produced by the `AnyNumber`
2758
- * labeled alternative in `HamelinParser.quantifier`.
2759
- * @param ctx the parse tree
2760
- */
2761
- exitAnyNumber?: (ctx: AnyNumberContext) => void;
2762
- /**
2763
- * Enter a parse tree produced by the `AtLeastOne`
2764
- * labeled alternative in `HamelinParser.quantifier`.
2765
- * @param ctx the parse tree
2766
- */
2767
- enterAtLeastOne?: (ctx: AtLeastOneContext) => void;
2768
- /**
2769
- * Exit a parse tree produced by the `AtLeastOne`
2770
- * labeled alternative in `HamelinParser.quantifier`.
2771
- * @param ctx the parse tree
2772
- */
2773
- exitAtLeastOne?: (ctx: AtLeastOneContext) => void;
2774
- /**
2775
- * Enter a parse tree produced by the `ZeroOrOne`
2776
- * labeled alternative in `HamelinParser.quantifier`.
2777
- * @param ctx the parse tree
2778
- */
2779
- enterZeroOrOne?: (ctx: ZeroOrOneContext) => void;
2780
- /**
2781
- * Exit a parse tree produced by the `ZeroOrOne`
2782
- * labeled alternative in `HamelinParser.quantifier`.
2783
- * @param ctx the parse tree
2784
- */
2785
- exitZeroOrOne?: (ctx: ZeroOrOneContext) => void;
2786
- /**
2787
- * Enter a parse tree produced by the `Exactly`
2788
- * labeled alternative in `HamelinParser.quantifier`.
2789
- * @param ctx the parse tree
2790
- */
2791
- enterExactly?: (ctx: ExactlyContext) => void;
2792
- /**
2793
- * Exit a parse tree produced by the `Exactly`
2794
- * labeled alternative in `HamelinParser.quantifier`.
2795
- * @param ctx the parse tree
2796
- */
2797
- exitExactly?: (ctx: ExactlyContext) => void;
2798
- /**
2799
- * Enter a parse tree produced by `HamelinParser.columnReference`.
2800
- * @param ctx the parse tree
2801
- */
2802
- enterColumnReference?: (ctx: ColumnReferenceContext) => void;
2803
- /**
2804
- * Exit a parse tree produced by `HamelinParser.columnReference`.
2805
- * @param ctx the parse tree
2806
- */
2807
- exitColumnReference?: (ctx: ColumnReferenceContext) => void;
2808
- /**
2809
- * Enter a parse tree produced by `HamelinParser.tableReference`.
2810
- * @param ctx the parse tree
2811
- */
2812
- enterTableReference?: (ctx: TableReferenceContext) => void;
2813
- /**
2814
- * Exit a parse tree produced by `HamelinParser.tableReference`.
2815
- * @param ctx the parse tree
2816
- */
2817
- exitTableReference?: (ctx: TableReferenceContext) => void;
2818
- /**
2819
- * Enter a parse tree produced by `HamelinParser.identifier`.
2820
- * @param ctx the parse tree
2821
- */
2822
- enterIdentifier?: (ctx: IdentifierContext) => void;
2823
- /**
2824
- * Exit a parse tree produced by `HamelinParser.identifier`.
2825
- * @param ctx the parse tree
2826
- */
2827
- exitIdentifier?: (ctx: IdentifierContext) => void;
2828
- /**
2829
- * Enter a parse tree produced by the `unquotedIdentifier`
2830
- * labeled alternative in `HamelinParser.simpleIdentifier`.
2831
- * @param ctx the parse tree
2832
- */
2833
- enterUnquotedIdentifier?: (ctx: UnquotedIdentifierContext) => void;
2834
- /**
2835
- * Exit a parse tree produced by the `unquotedIdentifier`
2836
- * labeled alternative in `HamelinParser.simpleIdentifier`.
2837
- * @param ctx the parse tree
2838
- */
2839
- exitUnquotedIdentifier?: (ctx: UnquotedIdentifierContext) => void;
2840
- /**
2841
- * Enter a parse tree produced by the `backQuotedIdentifier`
2842
- * labeled alternative in `HamelinParser.simpleIdentifier`.
2843
- * @param ctx the parse tree
2844
- */
2845
- enterBackQuotedIdentifier?: (ctx: BackQuotedIdentifierContext) => void;
2846
- /**
2847
- * Exit a parse tree produced by the `backQuotedIdentifier`
2848
- * labeled alternative in `HamelinParser.simpleIdentifier`.
2849
- * @param ctx the parse tree
2850
- */
2851
- exitBackQuotedIdentifier?: (ctx: BackQuotedIdentifierContext) => void;
2852
- /**
2853
- * Enter a parse tree produced by the `basicSingleQuotedStringLiteral`
2854
- * labeled alternative in `HamelinParser.string`.
2855
- * @param ctx the parse tree
2856
- */
2857
- enterBasicSingleQuotedStringLiteral?: (ctx: BasicSingleQuotedStringLiteralContext) => void;
2858
- /**
2859
- * Exit a parse tree produced by the `basicSingleQuotedStringLiteral`
2860
- * labeled alternative in `HamelinParser.string`.
2861
- * @param ctx the parse tree
2862
- */
2863
- exitBasicSingleQuotedStringLiteral?: (ctx: BasicSingleQuotedStringLiteralContext) => void;
2864
- /**
2865
- * Enter a parse tree produced by the `basicDoubleQuotedStringLiteral`
2866
- * labeled alternative in `HamelinParser.string`.
2867
- * @param ctx the parse tree
2868
- */
2869
- enterBasicDoubleQuotedStringLiteral?: (ctx: BasicDoubleQuotedStringLiteralContext) => void;
2870
- /**
2871
- * Exit a parse tree produced by the `basicDoubleQuotedStringLiteral`
2872
- * labeled alternative in `HamelinParser.string`.
2873
- * @param ctx the parse tree
2874
- */
2875
- exitBasicDoubleQuotedStringLiteral?: (ctx: BasicDoubleQuotedStringLiteralContext) => void;
2876
- /**
2877
- * Enter a parse tree produced by the `unicodeSingleQuotedStringLiteral`
2878
- * labeled alternative in `HamelinParser.string`.
2879
- * @param ctx the parse tree
2880
- */
2881
- enterUnicodeSingleQuotedStringLiteral?: (ctx: UnicodeSingleQuotedStringLiteralContext) => void;
2882
- /**
2883
- * Exit a parse tree produced by the `unicodeSingleQuotedStringLiteral`
2884
- * labeled alternative in `HamelinParser.string`.
2885
- * @param ctx the parse tree
2886
- */
2887
- exitUnicodeSingleQuotedStringLiteral?: (ctx: UnicodeSingleQuotedStringLiteralContext) => void;
2888
- /**
2889
- * Enter a parse tree produced by the `unicodeDoubleQuotedStringLiteral`
2890
- * labeled alternative in `HamelinParser.string`.
2891
- * @param ctx the parse tree
2892
- */
2893
- enterUnicodeDoubleQuotedStringLiteral?: (ctx: UnicodeDoubleQuotedStringLiteralContext) => void;
2894
- /**
2895
- * Exit a parse tree produced by the `unicodeDoubleQuotedStringLiteral`
2896
- * labeled alternative in `HamelinParser.string`.
2897
- * @param ctx the parse tree
2898
- */
2899
- exitUnicodeDoubleQuotedStringLiteral?: (ctx: UnicodeDoubleQuotedStringLiteralContext) => void;
2900
- /**
2901
- * Enter a parse tree produced by the `decimalLiteral`
2902
- * labeled alternative in `HamelinParser.number`.
2903
- * @param ctx the parse tree
2904
- */
2905
- enterDecimalLiteral?: (ctx: DecimalLiteralContext) => void;
2906
- /**
2907
- * Exit a parse tree produced by the `decimalLiteral`
2908
- * labeled alternative in `HamelinParser.number`.
2909
- * @param ctx the parse tree
2910
- */
2911
- exitDecimalLiteral?: (ctx: DecimalLiteralContext) => void;
2912
- /**
2913
- * Enter a parse tree produced by the `scientificLiteral`
2914
- * labeled alternative in `HamelinParser.number`.
2915
- * @param ctx the parse tree
2916
- */
2917
- enterScientificLiteral?: (ctx: ScientificLiteralContext) => void;
2918
- /**
2919
- * Exit a parse tree produced by the `scientificLiteral`
2920
- * labeled alternative in `HamelinParser.number`.
2921
- * @param ctx the parse tree
2922
- */
2923
- exitScientificLiteral?: (ctx: ScientificLiteralContext) => void;
2924
- /**
2925
- * Enter a parse tree produced by the `integerLiteral`
2926
- * labeled alternative in `HamelinParser.number`.
2927
- * @param ctx the parse tree
2928
- */
2929
- enterIntegerLiteral?: (ctx: IntegerLiteralContext) => void;
2930
- /**
2931
- * Exit a parse tree produced by the `integerLiteral`
2932
- * labeled alternative in `HamelinParser.number`.
2933
- * @param ctx the parse tree
2934
- */
2935
- exitIntegerLiteral?: (ctx: IntegerLiteralContext) => void;
2936
- /**
2937
- * Enter a parse tree produced by `HamelinParser.positionalArgument`.
2938
- * @param ctx the parse tree
2939
- */
2940
- enterPositionalArgument?: (ctx: PositionalArgumentContext) => void;
2941
- /**
2942
- * Exit a parse tree produced by `HamelinParser.positionalArgument`.
2943
- * @param ctx the parse tree
2944
- */
2945
- exitPositionalArgument?: (ctx: PositionalArgumentContext) => void;
2946
- /**
2947
- * Enter a parse tree produced by `HamelinParser.namedArgument`.
2948
- * @param ctx the parse tree
2949
- */
2950
- enterNamedArgument?: (ctx: NamedArgumentContext) => void;
2951
- /**
2952
- * Exit a parse tree produced by `HamelinParser.namedArgument`.
2953
- * @param ctx the parse tree
2954
- */
2955
- exitNamedArgument?: (ctx: NamedArgumentContext) => void;
2956
- visitTerminal(node: TerminalNode): void;
2957
- visitErrorNode(node: ErrorNode): void;
2958
- enterEveryRule(node: ParserRuleContext): void;
2959
- exitEveryRule(node: ParserRuleContext): void;
2960
- }
2961
-
2962
- declare const hamelinGrammar = "grammar Hamelin;\n\nidentifierEOF\n : identifier EOF\n ;\n\nqueryEOF\n : query EOF\n ;\n\ncommandEOF\n : command EOF\n ;\n\nexpressionEOF\n : expression EOF\n ;\n\npipelineEOF\n : pipeline EOF\n ;\n\nsimpleIdentifierEOF\n : simpleIdentifier EOF\n ;\n\nquery\n : (WITH simpleIdentifier ASSIGN pipeline)+ pipeline #withQuery\n | pipeline #standaloneQuery\n | expression #expressionQuery\n ;\n\npipeline\n : command ( PIPE command )* #pipelineAlt\n ;\n\ncommand\n : LET_COMMAND assignment (COMMA assignment)* COMMA? #letCommand\n | WHERE_COMMAND expression #whereCommand\n | SELECT_COMMAND assignmentClause (COMMA assignmentClause)* COMMA? #selectCommand\n | DROP_COMMAND selection (COMMA selection)* COMMA? #dropCommand\n | FROM_COMMAND fromClause (COMMA fromClause)* COMMA? #fromCommand\n | UNION_COMMAND fromClause (COMMA fromClause)* COMMA? #unionCommand\n | LIMIT_COMMAND expression #limitCommand\n | PARSE_COMMAND src=expression? string\n AS? identifier (COMMA identifier)* COMMA? NODROP? #parseCommand\n | WITHIN_COMMAND expression #withinCommand\n | AGG_COMMAND (assignmentClause (COMMA assignmentClause)*)? COMMA?\n (BY groupClause (COMMA groupClause)*)? COMMA?\n (SORT BY? sortExpression (COMMA sortExpression)*)? COMMA? #aggCommand\n | SORT BY? sortExpression (COMMA sortExpression)* COMMA? #sortCommand\n | WINDOW_COMMAND assignmentClause (COMMA assignmentClause)* COMMA?\n (BY groupClause (COMMA groupClause)*)? COMMA?\n (SORT BY? sortExpression (COMMA sortExpression)*)? COMMA?\n (WITHIN_COMMAND within=expression)? #windowCommand\n | APPEND_COMMAND tableReference (DISTINCT_BY selection (COMMA selection)*)? COMMA? #appendCommand\n | (JOIN_COMMAND | LOOKUP_COMMAND) fromClause (ON on=expression)? #joinCommand\n | EXPLODE_COMMAND assignmentClause #explodeCommand\n | (UNNEST_COMMAND | ROWS_COMMAND) expression #unnestCommand\n | NEST_COMMAND identifier #nestCommand\n | MATCH_COMMAND pattern+\n (WHEN matchDefine (COMMA matchDefine)*)? COMMA?\n (BY groupClause (COMMA groupClause)*)? COMMA?\n (SORT BY? sortExpression (COMMA sortExpression)*)? COMMA? #matchCommand\n ;\n\nassignmentClause: assignment | expression;\ngroupClause: assignmentClause;\nassignment: identifier ASSIGN expression;\nmatchDefine: simpleIdentifier ASSIGN expression;\nselection: identifier;\nsortExpression: expression (ASC | DESC)?;\ntableAlias: simpleIdentifier ASSIGN tableReference;\nfromClause: tableAlias | tableReference;\n\nexpression\n // Keep this list in precedence order (important!)\n : operator=(MINUS | PLUS) expression #unaryPrefixOperator\n | expression (SECOND_TRUNC | MINUTE_TRUNC | HOUR_TRUNC | DAY_TRUNC | WEEK_TRUNC |\n MONTH_TRUNC | QUARTER_TRUNC | YEAR_TRUNC) #tsTrunc\n | left=expression operator=DOT right=simpleIdentifier #deref\n | value=expression LBRACKET index=expression RBRACKET #indexAccess\n | left=expression operator=(ASTERISK | SLASH | PERCENT) right=expression #binaryOperator\n | left=expression operator=(PLUS | MINUS) right=expression #binaryOperator\n | operator=RANGE expression #unaryPrefixOperator\n | expression operator=RANGE #unaryPostfixOperator\n | left=expression operator=RANGE right=expression #binaryOperator\n | left=expression operator=AS right=hamelintype #cast\n | left=expression\n operator=(EQ | NEQ | LT | LTE | GT | GTE | IS | ISNOT | IN | NOTIN)\n right=expression #binaryOperator\n | operator=NOT expression #unaryPrefixOperator\n | left=expression operator=AND right=expression #binaryOperator\n | left=expression operator=OR right=expression #binaryOperator\n\n // Complex Literals\n | left=expression operator=COLON right=expression #pairLiteral\n | LCURLY simpleIdentifier COLON expression\n (COMMA simpleIdentifier COLON expression)* COMMA? RCURLY #structLiteral\n | LPARENS ((expression COMMA) |\n (expression COMMA expression (COMMA expression)* COMMA?)) RPARENS #tupleLiteral\n | LBRACKET (expression (COMMA expression)* COMMA?)? RBRACKET #arrayLiteral\n\n // Function Calls\n | functionName=simpleIdentifier\n LPARENS (namedArgument (COMMA namedArgument)* COMMA?)? RPARENS #functionCall\n | functionName=simpleIdentifier LPARENS\n positionalArgument (COMMA positionalArgument)*\n (COMMA namedArgument)* COMMA? RPARENS #functionCall\n\n // Primitive Literals\n | NULL #nullLiteral\n | number #numericLiteral\n | TRUE #booleanLiteral\n | FALSE #booleanLiteral\n | string #stringLiteral\n | BINARY_LITERAL #binaryLiteral\n | RANGE #unboundRangeLiteral\n | (NANOSECOND_INTERVAL | MICROSECOND_INTERVAL | MILLISECOND_INTERVAL |\n SECOND_INTERVAL | MINUTE_INTERVAL | HOUR_INTERVAL | DAY_INTERVAL |\n WEEK_INTERVAL | MONTH_INTERVAL | QUARTER_INTERVAL | YEAR_INTERVAL) #intervalLiteral\n | ROWS_LITERAL #rowsLiteral\n | (SECOND_TRUNC | MINUTE_TRUNC | HOUR_TRUNC | DAY_TRUNC | WEEK_TRUNC |\n MONTH_TRUNC | QUARTER_TRUNC | YEAR_TRUNC) #tsTruncTimestampLiteral\n\n // Environment references\n | columnReference #columnReferenceAlt\n\n // Keep this at the bottom to use it the mechanism that query authors have to specify precedence.\n | LPARENS expression RPARENS #parenthesizedExpression\n ;\n\nhamelintype\n : simpleIdentifier LPARENS hamelintype (COMMA hamelintype)* COMMA? RPARENS #parameterizedType\n | simpleIdentifier LPARENS INTEGER_VALUE (COMMA INTEGER_VALUE)* COMMA? RPARENS #typeWithArguments\n | LCURLY simpleIdentifier COLON hamelintype\n (COMMA simpleIdentifier COLON hamelintype)* COMMA? RCURLY #structType\n | LPARENS hamelintype (COMMA hamelintype )* COMMA? RPARENS #tupleType\n | simpleIdentifier #simpleType\n ;\n\npattern\n : fromClause quantifier? #quantified\n | LPARENS pattern+ RPARENS quantifier #nested\n ;\n\nquantifier\n : ASTERISK #AnyNumber\n | PLUS #AtLeastOne\n | QUESTIONMARK #ZeroOrOne\n | LCURLY INTEGER_VALUE RCURLY #Exactly\n ;\n\ncolumnReference\n : simpleIdentifier\n ;\n\ntableReference\n : identifier\n ;\n\nidentifier\n : simpleIdentifier\n | simpleIdentifier (DOT simpleIdentifier)+\n ;\n\nsimpleIdentifier\n : IDENTIFIER #unquotedIdentifier\n | BACKQUOTED_IDENTIFIER #backQuotedIdentifier\n ;\n\nstring\n : SINGLE_QUOTED_STRING #basicSingleQuotedStringLiteral\n | DOUBLE_QUOTED_STRING #basicDoubleQuotedStringLiteral\n | value=SINGLE_QUOTED_UNICODE_STRING (UESCAPE uesc=SINGLE_QUOTED_STRING)? #unicodeSingleQuotedStringLiteral\n | value=DOUBLE_QUOTED_UNICODE_STRING (UESCAPE uesc=DOUBLE_QUOTED_STRING)? #unicodeDoubleQuotedStringLiteral\n ;\n\nnumber\n : value=DECIMAL_VALUE #decimalLiteral\n | value=DOUBLE_VALUE #scientificLiteral\n | value=INTEGER_VALUE #integerLiteral\n ;\n\npositionalArgument\n : expression\n ;\n\nnamedArgument\n : simpleIdentifier ASSIGN expression\n ;\n\n//\n// COMMANDS\n//\n\nLET_COMMAND: 'LET' | 'let';\nWHERE_COMMAND: 'WHERE' | 'where';\nSELECT_COMMAND: 'SELECT' | 'select';\nDROP_COMMAND: 'DROP' | 'drop';\nFROM_COMMAND: 'FROM' | 'from';\nUNION_COMMAND: 'UNION' | 'union';\nLIMIT_COMMAND: 'LIMIT' | 'limit';\nPARSE_COMMAND: 'PARSE' | 'parse';\nWITHIN_COMMAND: 'WITHIN' | 'within';\nAGG_COMMAND: 'AGG' | 'agg';\nWINDOW_COMMAND: 'WINDOW' | 'window';\nAPPEND_COMMAND: 'APPEND' | 'append';\nJOIN_COMMAND: 'JOIN' | 'join';\nLOOKUP_COMMAND: 'LOOKUP' | 'lookup';\nEXPLODE_COMMAND: 'EXPLODE' | 'explode';\nUNNEST_COMMAND: 'UNNEST' | 'unnest';\nNEST_COMMAND: 'NEST' | 'nest';\nROWS_COMMAND: 'ROWS' | 'rows';\nMATCH_COMMAND: 'MATCH' | 'match';\n\nAS: 'AS' | 'as';\nNODROP: 'NODROP' | 'nodrop';\n\n//\n// Operators\n//\n\nPLUS: '+';\nMINUS: '-';\nASTERISK: '*';\nSLASH: '/';\nPERCENT: '%';\nLCURLY: '{';\nRCURLY: '}';\nCOLON: ':';\nQUESTIONMARK: '?';\n\nEQ: '==';\nNEQ: '!=';\nLT: '<';\nLTE: '<=';\nGT: '>';\nGTE: '>=';\nRANGE: '..';\n\nASSIGN: '=';\n\n//\n// Keywords\n//\n\nAND: 'AND' | 'and';\nFALSE: 'FALSE' | 'false';\nIS: 'IS' | 'is';\nNOT: 'NOT' | 'not';\nISNOT: 'IS NOT' | 'is not';\nIN: 'IN' | 'in';\nNOTIN: 'NOT IN' | 'not in';\nNULL: 'NULL' | 'null';\nOR: 'OR' | 'or';\nTRUE: 'TRUE' | 'true';\nUESCAPE: 'UESCAPE' | 'uescape';\nWITH: 'WITH' | 'with';\nBY: 'BY' | 'by';\nSORT: 'SORT' | 'sort';\nASC: 'ASC' | 'asc';\nDESC: 'DESC' | 'desc';\nDISTINCT_BY: 'DISTINCT BY' | 'distinct by';\nON: 'ON' | 'on';\nWHEN: 'WHEN' | 'when';\n\n//\n// Symbols\n//\n\nCOMMA: ',';\nPIPE: '|';\nLPARENS: '(';\nRPARENS: ')';\nDOT: '.';\nLBRACKET: '[';\nRBRACKET: ']';\n\n//\n// Literals\n//\n\nSINGLE_QUOTED_STRING\n : '\\'' ( ~'\\'' | '\\'\\'')* '\\''\n ;\nDOUBLE_QUOTED_STRING\n : '\"' ( ~'\"' | '\"\"')* '\"'\n ;\n\nSINGLE_QUOTED_UNICODE_STRING\n : 'U&\\'' ( ~'\\'' | '\\'\\'')* '\\'' // Unicode string with default escape character: U&'Hello winter \\2603 !'\n ;\n\nDOUBLE_QUOTED_UNICODE_STRING\n : 'U&\"' ( ~'\"' | '\"\"')* '\"' // Unicode string with custom escape character: U&'Hello winter #2603 !' UESCAPE '#'\n ;\n\n// Note: we allow any character inside the binary literal and validate\n// its a correct literal when the AST is being constructed. This\n// allows us to provide more meaningful error messages to the user\nBINARY_LITERAL\n : 'x\\'' (~'\\'')* '\\''\n ;\n\nNANOSECOND_INTERVAL\n : DECIMAL_INTEGER 'ns'\n ;\n\nMICROSECOND_INTERVAL\n : DECIMAL_INTEGER 'us'\n ;\n\nMILLISECOND_INTERVAL\n : DECIMAL_INTEGER 'ms'\n ;\n\nSECOND_INTERVAL\n : DECIMAL_INTEGER ('s' | 'sec' | 'secs' | 'second' | 'seconds')\n ;\n\nMINUTE_INTERVAL\n : DECIMAL_INTEGER ('m' | 'min' | 'mins' | 'minute' | 'minutes')\n ;\n\nHOUR_INTERVAL\n : DECIMAL_INTEGER ('h' | 'hr' | 'hrs' | 'hour' | 'hours')\n ;\n\nDAY_INTERVAL\n : DECIMAL_INTEGER ('d' | 'day' | 'days')\n ;\n\nWEEK_INTERVAL\n : DECIMAL_INTEGER ('w' | 'week' | 'weeks')\n ;\n\nMONTH_INTERVAL\n : DECIMAL_INTEGER ('mon' | 'month' | 'months')\n ;\n\nQUARTER_INTERVAL\n : DECIMAL_INTEGER ('q' | 'qtr' | 'qtrs' | 'quarter' | 'quarters')\n ;\n\nYEAR_INTERVAL\n : DECIMAL_INTEGER ('y' | 'yr' | 'yrs' | 'year' | 'years')\n ;\n\nROWS_LITERAL\n : DECIMAL_INTEGER ('r' | 'row' | 'rows')\n ;\n\nSECOND_TRUNC\n : '@' ('s' | 'sec' | 'secs' | 'second' | 'seconds')\n ;\n\nMINUTE_TRUNC\n : '@' ('m' | 'min' | 'mins' | 'minute' | 'minutes')\n ;\n\nHOUR_TRUNC\n : '@' ('h' | 'hr' | 'hrs' | 'hour' | 'hours')\n ;\n\nDAY_TRUNC\n : '@' ('d' | 'day' | 'days')\n ;\n\nWEEK_TRUNC\n : '@' ('w' | 'week' | 'weeks')\n ;\n\nMONTH_TRUNC\n : '@' ('mon' | 'month' | 'months')\n ;\n\nQUARTER_TRUNC\n : '@' ('q' | 'qtr' | 'qtrs' | 'quarter' | 'quarters')\n ;\n\nYEAR_TRUNC\n : '@' ('y' | 'yr' | 'yrs' | 'year' | 'years')\n ;\n\nINTEGER_VALUE\n : DECIMAL_INTEGER\n | HEXADECIMAL_INTEGER\n | OCTAL_INTEGER\n | BINARY_INTEGER\n ;\n\nDECIMAL_VALUE\n : DECIMAL_INTEGER '.' DECIMAL_INTEGER\n | '.' DECIMAL_INTEGER\n ;\n\nDOUBLE_VALUE\n : DIGIT+ ('.' DIGIT*)? EXPONENT\n | '.' DIGIT+ EXPONENT\n ;\n\nIDENTIFIER\n : [a-zA-Z_][a-zA-Z_0-9]*\n ;\n\nBACKQUOTED_IDENTIFIER\n : '`' ( ~'`' | '``' )* '`'\n ;\n\nfragment DECIMAL_INTEGER\n : DIGIT ('_'? DIGIT)*\n ;\n\nfragment HEXADECIMAL_INTEGER\n : '0x' ('_'? (DIGIT | [A-F]))+\n ;\n\nfragment OCTAL_INTEGER\n : '0o' ('_'? [0-7])+\n ;\n\nfragment BINARY_INTEGER\n : '0b' ('_'? [01])+\n ;\n\nfragment EXPONENT\n : 'e' [+-]? DIGIT+\n ;\n\nfragment DIGIT\n : [0-9]\n ;\n\n//\n// Comments and whitespace\n//\n\nSIMPLE_COMMENT\n : '//' ~[\\r\\n]* '\\r'? '\\n'? -> channel(HIDDEN)\n ;\n\nBRACKETED_COMMENT\n : '/*' .*? '*/' -> channel(HIDDEN)\n ;\n\nWS\n : [ \\r\\n\\t]+ -> skip\n ;\n";
2963
-
2964
- declare const getDatasetsFromQuery: (catalog: Catalog, hamelinInput: string) => Promise<QueryDatasetsResult>;
2965
-
2966
- declare const getFunctionDescriptions: () => Promise<FunctionDescription[]>;
2967
-
2968
- /**
2969
- * Returns the top level limit information from the provided Hamelin query.
2970
- */
2971
- declare const getLimits: (hamelinQuery: string) => number[];
2972
-
2973
- type QuerySort = {
2974
- column: string;
2975
- direction: "asc" | "desc" | null;
2976
- };
2977
- /**
2978
- * Returns the top level sorting information from the provided Hamelin query.
2979
- */
2980
- declare const getSorts: (hamelinQuery: string) => QuerySort[];
2981
-
2982
- declare const sampleCatalog: Catalog;
177
+ declare function getSyntaxCompletions(input: string, pos: number): Completion | null;
2983
178
 
2984
- export { AggCommandContext, AnyNumberContext, AppendCommandContext, ArrayLiteralContext, AssignmentClauseContext, AssignmentContext, AtLeastOneContext, BackQuotedIdentifierContext, BasicDoubleQuotedStringLiteralContext, BasicSingleQuotedStringLiteralContext, BinaryLiteralContext, BinaryOperatorContext, BooleanLiteralContext, CastContext, type Catalog, CatalogProvider, type Column, ColumnReferenceAltContext, ColumnReferenceContext, CommandContext, CommandEOFContext, type CompileQueryResult, Compiler, type Completion, type CompletionItem, type CompletionItemKind, type Context, type ContextualCompletion, type ContextualResult, type ContextualTranslationError, type ContextualTranslationErrors, type DMLTranslation, DecimalLiteralContext, DerefContext, DropCommandContext, ExactlyContext, ExplodeCommandContext, ExpressionContext, ExpressionEOFContext, ExpressionQueryContext, FromClauseContext, FromCommandContext, FunctionCallContext, type FunctionDescription, GroupClauseContext, HamelinLexer, HamelinListener, HamelinParser, type HamelinType, HamelinVisitor, HamelintypeContext, IdentifierContext, IdentifierEOFContext, IndexAccessContext, type InitInput, type InitOutput, IntegerLiteralContext, IntervalLiteralContext, JoinCommandContext, type LanguageArea, LetCommandContext, type Level, LimitCommandContext, MatchCommandContext, MatchDefineContext, NamedArgumentContext, NestCommandContext, NestedContext, NullLiteralContext, NumberContext, NumericLiteralContext, PairLiteralContext, ParameterizedTypeContext, ParenthesizedExpressionContext, ParseCommandContext, PatternContext, PipelineAltContext, PipelineContext, PipelineEOFContext, PositionalArgumentContext, QuantifiedContext, QuantifierContext, QueryContext, type QueryDatasetsResult, QueryEOFContext, type QuerySort, type QueryTranslation, RowsLiteralContext, ScientificLiteralContext, SelectCommandContext, SelectionContext, SimpleIdentifierContext, SimpleIdentifierEOFContext, SimpleTypeContext, SortCommandContext, SortExpressionContext, type Stage, StandaloneQueryContext, type StatementTranslation, StringContext, StringLiteralContext, StructLiteralContext, StructTypeContext, type SyncInitInput, TableAliasContext, TableReferenceContext, type Translation, type TranslationError, type TranslationErrors, TsTruncContext, TsTruncTimestampLiteralContext, TupleLiteralContext, TupleTypeContext, TypeWithArgumentsContext, UnaryPostfixOperatorContext, UnaryPrefixOperatorContext, UnboundRangeLiteralContext, UnicodeDoubleQuotedStringLiteralContext, UnicodeSingleQuotedStringLiteralContext, UnionCommandContext, UnnestCommandContext, UnquotedIdentifierContext, WhereCommandContext, WindowCommandContext, WithQueryContext, WithinCommandContext, ZeroOrOneContext, compileHamelin, createCompiler, getDatasetsFromQuery, getFunctionDescriptions, getLimits, getSorts, hamelinGrammar, initSync, sampleCatalog };
179
+ export { type Catalog, type Column, type Completion, type CompletionItem, type ContextualResult, type ContextualTranslationError, type ContextualTranslationErrors, type FunctionDescription, type HamelinType, type QuerySort, type QueryTranslation, type Translation, type TranslationError, compileHamelin, createCompiler, getAggregations, getDatasetsFromQuery, getFunctionDescriptions, getLimits, getSelectedFields, getSorts, getSyntaxCompletions, hamelinGrammar, parseTokenValueClass, sampleCatalog };