@malloydata/malloy 0.0.2 → 0.0.4
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.
- package/README.md +12 -11
- package/dist/dialect/duckdb.d.ts +1 -1
- package/dist/dialect/postgres.d.ts +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/lang/ast/ast-expr.d.ts +0 -1
- package/dist/lang/field-space.d.ts +9 -7
- package/dist/lang/lib/Malloy/MalloyLexer.d.ts +108 -106
- package/dist/lang/lib/Malloy/MalloyLexer.js +1019 -1006
- package/dist/lang/lib/Malloy/MalloyParser.d.ts +581 -590
- package/dist/lang/lib/Malloy/MalloyParser.js +1141 -1202
- package/dist/lang/lib/Malloy/MalloyParserListener.d.ts +2015 -0
- package/dist/lang/lib/Malloy/MalloyParserListener.js +4 -0
- package/dist/lang/lib/Malloy/MalloyParserVisitor.d.ts +1269 -0
- package/dist/lang/lib/Malloy/MalloyParserVisitor.js +4 -0
- package/dist/lang/parse-to-ast.d.ts +3 -4
- package/dist/lang/parse-to-ast.js +1 -1
- package/dist/lang/parse-tree-walkers/document-completion-walker.js +2 -0
- package/dist/lang/parse-tree-walkers/explore-query-walker.d.ts +2 -2
- package/dist/malloy.d.ts +1 -1
- package/dist/md5.d.ts +1 -0
- package/dist/md5.js +30 -0
- package/dist/model/malloy_types.d.ts +3 -1
- package/package.json +9 -14
- package/dist/connection_utils.js +0 -56
- package/dist/dialect/dialect-map.d.ts +0 -3
- package/dist/dialect/dialect-map.js +0 -33
- package/dist/dialect/dialect.js +0 -77
- package/dist/dialect/dialect_map.js +0 -35
- package/dist/dialect/duckdb.js +0 -349
- package/dist/dialect/index.js +0 -27
- package/dist/dialect/postgres.js +0 -308
- package/dist/dialect/standardsql.js +0 -361
- package/dist/index.js +0 -47
- package/dist/lang/ast/apply-expr.js +0 -231
- package/dist/lang/ast/ast-expr.js +0 -1051
- package/dist/lang/ast/ast-main.js +0 -2086
- package/dist/lang/ast/ast-time-expr.js +0 -549
- package/dist/lang/ast/ast-types.js +0 -215
- package/dist/lang/ast/index.js +0 -34
- package/dist/lang/ast/time-utils.js +0 -94
- package/dist/lang/field-space.js +0 -629
- package/dist/lang/field-utils.js +0 -33
- package/dist/lang/index.js +0 -22
- package/dist/lang/parse-log.js +0 -41
- package/dist/lang/reference-list.js +0 -80
- package/dist/lang/space-field.js +0 -346
- package/dist/lang/test/document-help-context-walker.spec.js +0 -45
- package/dist/lang/test/document-symbol-walker.spec.js +0 -100
- package/dist/lang/test/field-symbols.spec.js +0 -172
- package/dist/lang/test/parse.spec.js +0 -1936
- package/dist/lang/test/test-translator.js +0 -334
- package/dist/lang/zone.js +0 -97
- package/dist/malloy.js +0 -2354
- package/dist/model/index.js +0 -34
- package/dist/model/malloy-query.d.ts +0 -313
- package/dist/model/malloy-query.js +0 -2603
- package/dist/model/malloy-types.d.ts +0 -404
- package/dist/model/malloy-types.js +0 -242
- package/dist/model/malloy_query.js +0 -2996
- package/dist/model/malloy_types.js +0 -283
- package/dist/model/sql-block.d.ts +0 -11
- package/dist/model/sql-block.js +0 -38
- package/dist/model/sql_block.js +0 -41
- package/dist/model/utils.js +0 -84
- package/dist/runtime-types.d.ts +0 -116
- package/dist/runtime-types.js +0 -40
- package/dist/runtime_types.js +0 -15
package/README.md
CHANGED
|
@@ -9,17 +9,16 @@ This package facilitates building the Malloy language - or the usage of data mod
|
|
|
9
9
|
## Show me an example!
|
|
10
10
|
|
|
11
11
|
```
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
const connection = new
|
|
16
|
-
const runtime = new
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
12
|
+
const malloy = require("@malloydata/malloy")
|
|
13
|
+
const bigquery = require("@malloydata/db-bigquery")
|
|
14
|
+
|
|
15
|
+
const connection = new bigquery.BigQueryConnection("bigquery");
|
|
16
|
+
const runtime = new malloy.SingleConnectionRuntime(connection);
|
|
17
|
+
const model = runtime.loadModel("source: airports is table('malloytest.airports')")
|
|
18
|
+
const runner = model.loadQuery("query: airports->{aggregate: airport_count is count()}")
|
|
19
|
+
runner.run().then((result) => {
|
|
20
|
+
console.log(result.data.value) // [ { airport_count: 19793 } ]
|
|
21
|
+
})
|
|
23
22
|
```
|
|
24
23
|
|
|
25
24
|
Note: These APIs are still in beta and subject to change.
|
|
@@ -37,3 +36,5 @@ In practice, much of this loop is handled by various database plugins:
|
|
|
37
36
|
## Do you have any examples?
|
|
38
37
|
|
|
39
38
|
You can find a (very) simple example of writing a CLI for executing Malloy queries [here](https://github.com/looker-open-source/malloy/tree/main/demo/malloy-demo-bq-cli)
|
|
39
|
+
|
|
40
|
+
A more realistic and complex use case - we use these libraries to power our VSCode Extension. Some examples can be found [here](https://github.com/looker-open-source/malloy/tree/main/vscode-extension/src/extension/commands)
|
package/dist/dialect/duckdb.d.ts
CHANGED
|
@@ -34,7 +34,7 @@ export declare class DuckDBDialect extends Dialect {
|
|
|
34
34
|
sqlSelectAliasAsStruct(alias: string, physicalFieldNames: string[]): string;
|
|
35
35
|
sqlMaybeQuoteIdentifier(identifier: string): string;
|
|
36
36
|
sqlCreateTableAsSelect(_tableName: string, _sql: string): string;
|
|
37
|
-
getFunctionInfo(
|
|
37
|
+
getFunctionInfo(functionName: string): FunctionInfo | undefined;
|
|
38
38
|
sqlMeasureTime(from: TimeValue, to: TimeValue, units: string): Expr;
|
|
39
39
|
sqlNow(): Expr;
|
|
40
40
|
sqlTrunc(sqlTime: TimeValue, units: TimestampUnit): Expr;
|
|
@@ -41,7 +41,7 @@ export declare class PostgresDialect extends Dialect {
|
|
|
41
41
|
sqlCast(cast: TypecastFragment): Expr;
|
|
42
42
|
sqlRegexpMatch(expr: Expr, regexp: string): Expr;
|
|
43
43
|
sqlLiteralTime(timeString: string, type: TimeFieldType, _timezone: string): string;
|
|
44
|
-
getFunctionInfo(
|
|
44
|
+
getFunctionInfo(functionName: string): FunctionInfo | undefined;
|
|
45
45
|
sqlMeasureTime(from: TimeValue, to: TimeValue, units: string): Expr;
|
|
46
46
|
sqlSumDistinct(key: string, value: string): string;
|
|
47
47
|
sqlSampleTable(tableSQL: string, sample: Sampling | undefined): string;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export type { QueryDataRow, ModelDef, Fragment, Query, StructDef, NamedStructDefs, MalloyQueryData, AtomicFieldType as AtomicFieldTypeInner, DateUnit, ExtractUnit, TimestampUnit, TimeFieldType, QueryData, FieldTypeDef, Expr, DialectFragment, TimeValue, FilterExpression, SQLBlock, FieldDef, PipeSegment, QueryFieldDef, TurtleDef, SearchValueMapResult, SearchIndexResult, } from "./model";
|
|
1
|
+
export type { QueryDataRow, ModelDef, Fragment, Query, StructDef, StructRelationship, NamedStructDefs, MalloyQueryData, AtomicFieldType as AtomicFieldTypeInner, DateUnit, ExtractUnit, TimestampUnit, TimeFieldType, QueryData, FieldTypeDef, Expr, DialectFragment, TimeValue, FilterExpression, SQLBlock, FieldDef, FilteredAliasedName, PipeSegment, QueryFieldDef, TurtleDef, SearchValueMapResult, SearchIndexResult, } from "./model";
|
|
2
2
|
export { Segment, isFilteredAliasedName, } from "./model";
|
|
3
3
|
export { HighlightType, MalloyTranslator, } from "./lang";
|
|
4
4
|
export type { LogMessage, TranslateResponse } from "./lang";
|
|
5
|
-
export { Malloy, Runtime, AtomicFieldType, ConnectionRuntime, SingleConnectionRuntime, EmptyURLReader, InMemoryURLReader, FixedConnectionMap, MalloyError, JoinRelationship, SourceRelationship, DateTimeframe, TimestampTimeframe, Result,
|
|
6
|
-
export type { Explore, Model, PreparedQuery, PreparedResult, Field, AtomicField, ExploreField, QueryField, DataArray, DataRecord, DataColumn, DataArrayOrRecord, ModelMaterializer, DocumentSymbol, DocumentHighlight, ResultJSON, PreparedResultMaterializer, SQLBlockMaterializer, ExploreMaterializer, WriteStream, } from "./malloy";
|
|
7
|
-
export type { URLReader, InfoConnection, LookupConnection, Connection, QueryString, ModelString, QueryURL, ModelURL, PooledConnection, TestableConnection, PersistSQLResults, } from "./runtime_types";
|
|
5
|
+
export { Malloy, Runtime, AtomicFieldType, ConnectionRuntime, SingleConnectionRuntime, EmptyURLReader, InMemoryURLReader, FixedConnectionMap, MalloyError, JoinRelationship, SourceRelationship, DateTimeframe, TimestampTimeframe, Result, parseTableURI, QueryMaterializer, CSVWriter, JSONWriter, DataWriter, } from "./malloy";
|
|
6
|
+
export type { Explore, Model, PreparedQuery, PreparedResult, Field, AtomicField, ExploreField, QueryField, DataArray, DataRecord, DataColumn, DataArrayOrRecord, ModelMaterializer, DocumentSymbol, DocumentHighlight, ResultJSON, RunSQLOptions, PreparedResultMaterializer, SQLBlockMaterializer, ExploreMaterializer, WriteStream, } from "./malloy";
|
|
7
|
+
export type { URLReader, InfoConnection, LookupConnection, Connection, QueryString, ModelString, QueryURL, ModelURL, PooledConnection, TestableConnection, PersistSQLResults, FetchSchemaAndRunSimultaneously, StreamingConnection, FetchSchemaAndRunStreamSimultaneously, } from "./runtime_types";
|
|
8
8
|
export type { Loggable } from "./malloy";
|
|
9
9
|
export { toAsyncGenerator } from "./connection_utils";
|
|
@@ -141,7 +141,6 @@ export declare class ExprParens extends ExpressionDef {
|
|
|
141
141
|
readonly expr: ExpressionDef;
|
|
142
142
|
elementType: string;
|
|
143
143
|
constructor(expr: ExpressionDef);
|
|
144
|
-
apply(fs: FieldSpace, op: string, expr: ExpressionDef): ExprValue;
|
|
145
144
|
requestExpression(fs: FieldSpace): ExprValue | undefined;
|
|
146
145
|
getExpression(fs: FieldSpace): ExprValue;
|
|
147
146
|
}
|
|
@@ -48,10 +48,10 @@ export declare type SourceSpec = model.StructDef | FieldSpace;
|
|
|
48
48
|
/**
|
|
49
49
|
* Based on how things are constructed, the starting field space
|
|
50
50
|
* can either be another field space or an existing structdef.
|
|
51
|
-
* Using a
|
|
51
|
+
* Using a SpaceSeed allows a class to accept either one
|
|
52
52
|
* and use either version at some future time.
|
|
53
53
|
*/
|
|
54
|
-
declare class
|
|
54
|
+
declare class SpaceSeed {
|
|
55
55
|
readonly sourceSpec: SourceSpec;
|
|
56
56
|
private spaceSpec;
|
|
57
57
|
private asFS?;
|
|
@@ -65,7 +65,7 @@ declare class SourceSpace {
|
|
|
65
65
|
*/
|
|
66
66
|
export declare class DynamicSpace extends StaticSpace {
|
|
67
67
|
protected final: model.StructDef | undefined;
|
|
68
|
-
protected source:
|
|
68
|
+
protected source: SpaceSeed;
|
|
69
69
|
outputFS?: QuerySpace;
|
|
70
70
|
completions: (() => void)[];
|
|
71
71
|
private complete;
|
|
@@ -86,11 +86,13 @@ export declare class DynamicSpace extends StaticSpace {
|
|
|
86
86
|
structDef(): model.StructDef;
|
|
87
87
|
}
|
|
88
88
|
/**
|
|
89
|
-
*
|
|
90
|
-
*
|
|
91
|
-
* which
|
|
92
|
-
* space is
|
|
89
|
+
* Unlike a source, which is a refinement of a namespace, a query
|
|
90
|
+
* is creating a new unrelated namespace. The query starts with a
|
|
91
|
+
* source, which it might modify. This set of fields used to resolve
|
|
92
|
+
* expressions in the query is called the "input space". There is a
|
|
93
|
+
* specialized QuerySpace for each type of query operation.
|
|
93
94
|
*
|
|
95
|
+
* The query output is managed by an instance of ResultSpace.
|
|
94
96
|
*/
|
|
95
97
|
export declare class QuerySpace extends DynamicSpace {
|
|
96
98
|
readonly result: ResultSpace;
|
|
@@ -27,112 +27,113 @@ export declare class MalloyLexer extends Lexer {
|
|
|
27
27
|
static readonly SAMPLE = 22;
|
|
28
28
|
static readonly SOURCE = 23;
|
|
29
29
|
static readonly SQL = 24;
|
|
30
|
-
static readonly
|
|
31
|
-
static readonly
|
|
32
|
-
static readonly
|
|
33
|
-
static readonly
|
|
34
|
-
static readonly
|
|
35
|
-
static readonly
|
|
36
|
-
static readonly
|
|
37
|
-
static readonly
|
|
38
|
-
static readonly
|
|
39
|
-
static readonly
|
|
40
|
-
static readonly
|
|
41
|
-
static readonly
|
|
42
|
-
static readonly
|
|
43
|
-
static readonly
|
|
44
|
-
static readonly
|
|
45
|
-
static readonly
|
|
46
|
-
static readonly
|
|
47
|
-
static readonly
|
|
48
|
-
static readonly
|
|
49
|
-
static readonly
|
|
50
|
-
static readonly
|
|
51
|
-
static readonly
|
|
52
|
-
static readonly
|
|
53
|
-
static readonly
|
|
54
|
-
static readonly
|
|
55
|
-
static readonly
|
|
56
|
-
static readonly
|
|
57
|
-
static readonly
|
|
58
|
-
static readonly
|
|
59
|
-
static readonly
|
|
60
|
-
static readonly
|
|
61
|
-
static readonly
|
|
62
|
-
static readonly
|
|
63
|
-
static readonly
|
|
64
|
-
static readonly
|
|
65
|
-
static readonly
|
|
66
|
-
static readonly
|
|
67
|
-
static readonly
|
|
68
|
-
static readonly
|
|
69
|
-
static readonly
|
|
70
|
-
static readonly
|
|
71
|
-
static readonly
|
|
72
|
-
static readonly
|
|
73
|
-
static readonly
|
|
74
|
-
static readonly
|
|
75
|
-
static readonly
|
|
76
|
-
static readonly
|
|
77
|
-
static readonly
|
|
78
|
-
static readonly
|
|
79
|
-
static readonly
|
|
80
|
-
static readonly
|
|
81
|
-
static readonly
|
|
82
|
-
static readonly
|
|
83
|
-
static readonly
|
|
84
|
-
static readonly
|
|
85
|
-
static readonly
|
|
86
|
-
static readonly
|
|
87
|
-
static readonly
|
|
88
|
-
static readonly
|
|
89
|
-
static readonly
|
|
90
|
-
static readonly
|
|
91
|
-
static readonly
|
|
92
|
-
static readonly
|
|
93
|
-
static readonly
|
|
94
|
-
static readonly
|
|
95
|
-
static readonly
|
|
96
|
-
static readonly
|
|
97
|
-
static readonly
|
|
98
|
-
static readonly
|
|
99
|
-
static readonly
|
|
100
|
-
static readonly
|
|
101
|
-
static readonly
|
|
102
|
-
static readonly
|
|
103
|
-
static readonly
|
|
104
|
-
static readonly
|
|
105
|
-
static readonly
|
|
106
|
-
static readonly
|
|
107
|
-
static readonly
|
|
108
|
-
static readonly
|
|
109
|
-
static readonly
|
|
110
|
-
static readonly
|
|
111
|
-
static readonly
|
|
112
|
-
static readonly
|
|
113
|
-
static readonly
|
|
114
|
-
static readonly
|
|
115
|
-
static readonly
|
|
116
|
-
static readonly
|
|
117
|
-
static readonly
|
|
118
|
-
static readonly
|
|
119
|
-
static readonly
|
|
120
|
-
static readonly
|
|
121
|
-
static readonly
|
|
122
|
-
static readonly
|
|
123
|
-
static readonly
|
|
124
|
-
static readonly
|
|
125
|
-
static readonly
|
|
126
|
-
static readonly
|
|
127
|
-
static readonly
|
|
128
|
-
static readonly
|
|
129
|
-
static readonly
|
|
130
|
-
static readonly
|
|
131
|
-
static readonly
|
|
132
|
-
static readonly
|
|
133
|
-
static readonly
|
|
134
|
-
static readonly
|
|
135
|
-
static readonly
|
|
30
|
+
static readonly FANCYSQL = 25;
|
|
31
|
+
static readonly TOP = 26;
|
|
32
|
+
static readonly WHERE = 27;
|
|
33
|
+
static readonly ALL = 28;
|
|
34
|
+
static readonly AND = 29;
|
|
35
|
+
static readonly AS = 30;
|
|
36
|
+
static readonly ASC = 31;
|
|
37
|
+
static readonly AVG = 32;
|
|
38
|
+
static readonly BOOLEAN = 33;
|
|
39
|
+
static readonly BY = 34;
|
|
40
|
+
static readonly CASE = 35;
|
|
41
|
+
static readonly CAST = 36;
|
|
42
|
+
static readonly CONDITION = 37;
|
|
43
|
+
static readonly COUNT = 38;
|
|
44
|
+
static readonly DATE = 39;
|
|
45
|
+
static readonly DAY = 40;
|
|
46
|
+
static readonly DESC = 41;
|
|
47
|
+
static readonly DISTINCT = 42;
|
|
48
|
+
static readonly ELSE = 43;
|
|
49
|
+
static readonly END = 44;
|
|
50
|
+
static readonly EXCLUDE = 45;
|
|
51
|
+
static readonly FALSE = 46;
|
|
52
|
+
static readonly FOR = 47;
|
|
53
|
+
static readonly FROM = 48;
|
|
54
|
+
static readonly FROM_SQL = 49;
|
|
55
|
+
static readonly HAS = 50;
|
|
56
|
+
static readonly HOUR = 51;
|
|
57
|
+
static readonly IMPORT = 52;
|
|
58
|
+
static readonly IS = 53;
|
|
59
|
+
static readonly JSON = 54;
|
|
60
|
+
static readonly LAST = 55;
|
|
61
|
+
static readonly MAX = 56;
|
|
62
|
+
static readonly MIN = 57;
|
|
63
|
+
static readonly MINUTE = 58;
|
|
64
|
+
static readonly MONTH = 59;
|
|
65
|
+
static readonly NOT = 60;
|
|
66
|
+
static readonly NOW = 61;
|
|
67
|
+
static readonly NULL = 62;
|
|
68
|
+
static readonly NUMBER = 63;
|
|
69
|
+
static readonly ON = 64;
|
|
70
|
+
static readonly OR = 65;
|
|
71
|
+
static readonly PICK = 66;
|
|
72
|
+
static readonly QMARK = 67;
|
|
73
|
+
static readonly QUARTER = 68;
|
|
74
|
+
static readonly SECOND = 69;
|
|
75
|
+
static readonly STRING = 70;
|
|
76
|
+
static readonly SUM = 71;
|
|
77
|
+
static readonly TABLE = 72;
|
|
78
|
+
static readonly THEN = 73;
|
|
79
|
+
static readonly THIS = 74;
|
|
80
|
+
static readonly TIMESTAMP = 75;
|
|
81
|
+
static readonly TO = 76;
|
|
82
|
+
static readonly TRUE = 77;
|
|
83
|
+
static readonly TURTLE = 78;
|
|
84
|
+
static readonly WEEK = 79;
|
|
85
|
+
static readonly WHEN = 80;
|
|
86
|
+
static readonly WITH = 81;
|
|
87
|
+
static readonly YEAR = 82;
|
|
88
|
+
static readonly UNGROUPED = 83;
|
|
89
|
+
static readonly STRING_ESCAPE = 84;
|
|
90
|
+
static readonly HACKY_REGEX = 85;
|
|
91
|
+
static readonly STRING_LITERAL = 86;
|
|
92
|
+
static readonly AMPER = 87;
|
|
93
|
+
static readonly ARROW = 88;
|
|
94
|
+
static readonly FAT_ARROW = 89;
|
|
95
|
+
static readonly OPAREN = 90;
|
|
96
|
+
static readonly CPAREN = 91;
|
|
97
|
+
static readonly OBRACK = 92;
|
|
98
|
+
static readonly CBRACK = 93;
|
|
99
|
+
static readonly OCURLY = 94;
|
|
100
|
+
static readonly CCURLY = 95;
|
|
101
|
+
static readonly DOUBLECOLON = 96;
|
|
102
|
+
static readonly COLON = 97;
|
|
103
|
+
static readonly COMMA = 98;
|
|
104
|
+
static readonly DOT = 99;
|
|
105
|
+
static readonly LT = 100;
|
|
106
|
+
static readonly GT = 101;
|
|
107
|
+
static readonly EQ = 102;
|
|
108
|
+
static readonly NE = 103;
|
|
109
|
+
static readonly LTE = 104;
|
|
110
|
+
static readonly GTE = 105;
|
|
111
|
+
static readonly PLUS = 106;
|
|
112
|
+
static readonly MINUS = 107;
|
|
113
|
+
static readonly STAR = 108;
|
|
114
|
+
static readonly STARSTAR = 109;
|
|
115
|
+
static readonly SLASH = 110;
|
|
116
|
+
static readonly BAR = 111;
|
|
117
|
+
static readonly SEMI = 112;
|
|
118
|
+
static readonly NOT_MATCH = 113;
|
|
119
|
+
static readonly MATCH = 114;
|
|
120
|
+
static readonly LITERAL_TIMESTAMP = 115;
|
|
121
|
+
static readonly LITERAL_DAY = 116;
|
|
122
|
+
static readonly LITERAL_QUARTER = 117;
|
|
123
|
+
static readonly LITERAL_MONTH = 118;
|
|
124
|
+
static readonly LITERAL_WEEK = 119;
|
|
125
|
+
static readonly LITERAL_YEAR = 120;
|
|
126
|
+
static readonly IDENTIFIER = 121;
|
|
127
|
+
static readonly PERCENT_LITERAL = 122;
|
|
128
|
+
static readonly INTEGER_LITERAL = 123;
|
|
129
|
+
static readonly NUMERIC_LITERAL = 124;
|
|
130
|
+
static readonly OBJECT_NAME_LITERAL = 125;
|
|
131
|
+
static readonly BLOCK_COMMENT = 126;
|
|
132
|
+
static readonly COMMENT_TO_EOL = 127;
|
|
133
|
+
static readonly WHITE_SPACE = 128;
|
|
134
|
+
static readonly SQL_STRING = 129;
|
|
135
|
+
static readonly UNWATED_CHARS_TRAILING_NUMBERS = 130;
|
|
136
|
+
static readonly UNEXPECTED_CHAR = 131;
|
|
136
137
|
static readonly channelNames: string[];
|
|
137
138
|
static readonly modeNames: string[];
|
|
138
139
|
static readonly ruleNames: string[];
|
|
@@ -150,6 +151,7 @@ export declare class MalloyLexer extends Lexer {
|
|
|
150
151
|
private static readonly _serializedATNSegment0;
|
|
151
152
|
private static readonly _serializedATNSegment1;
|
|
152
153
|
private static readonly _serializedATNSegment2;
|
|
154
|
+
private static readonly _serializedATNSegment3;
|
|
153
155
|
static readonly _serializedATN: string;
|
|
154
156
|
static __ATN: ATN;
|
|
155
157
|
static get _ATN(): ATN;
|