@apexdevtools/apex-parser 4.3.1 → 5.0.0-beta.1

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 (68) hide show
  1. package/CHANGELOG.md +110 -0
  2. package/README.md +98 -42
  3. package/lib/ApexErrorListener.d.ts +25 -0
  4. package/lib/ApexErrorListener.js +64 -0
  5. package/lib/ApexErrorListener.js.map +1 -0
  6. package/lib/ApexParserFactory.d.ts +69 -0
  7. package/lib/ApexParserFactory.js +125 -0
  8. package/lib/ApexParserFactory.js.map +1 -0
  9. package/lib/CaseInsensitiveInputStream.d.ts +11 -13
  10. package/lib/CaseInsensitiveInputStream.js +22 -28
  11. package/lib/CaseInsensitiveInputStream.js.map +1 -1
  12. package/lib/Check.d.ts +36 -0
  13. package/lib/Check.js +212 -0
  14. package/lib/Check.js.map +1 -0
  15. package/lib/{ApexLexer.d.ts → antlr/ApexLexer.d.ts} +87 -93
  16. package/lib/antlr/ApexLexer.js +1575 -0
  17. package/lib/antlr/ApexLexer.js.map +1 -0
  18. package/lib/{ApexParser.d.ts → antlr/ApexParser.d.ts} +1420 -1378
  19. package/lib/antlr/ApexParser.js +20976 -0
  20. package/lib/antlr/ApexParser.js.map +1 -0
  21. package/lib/{ApexParserListener.d.ts → antlr/ApexParserListener.d.ts} +708 -686
  22. package/lib/antlr/ApexParserListener.js +12 -0
  23. package/lib/antlr/ApexParserListener.js.map +1 -0
  24. package/lib/{ApexParserVisitor.d.ts → antlr/ApexParserVisitor.d.ts} +420 -406
  25. package/lib/antlr/ApexParserVisitor.js +15 -0
  26. package/lib/antlr/ApexParserVisitor.js.map +1 -0
  27. package/lib/index.d.ts +8 -24
  28. package/lib/index.js +13 -140
  29. package/lib/index.js.map +1 -1
  30. package/package.json +30 -27
  31. package/lib/ApexLexer.js +0 -1694
  32. package/lib/ApexLexer.js.map +0 -1
  33. package/lib/ApexParser.js +0 -19505
  34. package/lib/ApexParser.js.map +0 -1
  35. package/lib/ApexParserListener.js +0 -4
  36. package/lib/ApexParserListener.js.map +0 -1
  37. package/lib/ApexParserVisitor.js +0 -4
  38. package/lib/ApexParserVisitor.js.map +0 -1
  39. package/lib/ThrowingErrorListener.d.ts +0 -10
  40. package/lib/ThrowingErrorListener.js +0 -18
  41. package/lib/ThrowingErrorListener.js.map +0 -1
  42. package/lib/__tests__/ApexLexerTest.d.ts +0 -1
  43. package/lib/__tests__/ApexLexerTest.js +0 -48
  44. package/lib/__tests__/ApexLexerTest.js.map +0 -1
  45. package/lib/__tests__/ApexListenerTest.d.ts +0 -1
  46. package/lib/__tests__/ApexListenerTest.js +0 -41
  47. package/lib/__tests__/ApexListenerTest.js.map +0 -1
  48. package/lib/__tests__/ApexParserTest.d.ts +0 -1
  49. package/lib/__tests__/ApexParserTest.js +0 -199
  50. package/lib/__tests__/ApexParserTest.js.map +0 -1
  51. package/lib/__tests__/ApexTriggerTest.d.ts +0 -1
  52. package/lib/__tests__/ApexTriggerTest.js +0 -66
  53. package/lib/__tests__/ApexTriggerTest.js.map +0 -1
  54. package/lib/__tests__/ApexVisitorTest.d.ts +0 -1
  55. package/lib/__tests__/ApexVisitorTest.js +0 -46
  56. package/lib/__tests__/ApexVisitorTest.js.map +0 -1
  57. package/lib/__tests__/SOQLParserTest.d.ts +0 -1
  58. package/lib/__tests__/SOQLParserTest.js +0 -115
  59. package/lib/__tests__/SOQLParserTest.js.map +0 -1
  60. package/lib/__tests__/SOSLParserTest.d.ts +0 -1
  61. package/lib/__tests__/SOSLParserTest.js +0 -101
  62. package/lib/__tests__/SOSLParserTest.js.map +0 -1
  63. package/lib/__tests__/SyntaxErrorCounter.d.ts +0 -10
  64. package/lib/__tests__/SyntaxErrorCounter.js +0 -52
  65. package/lib/__tests__/SyntaxErrorCounter.js.map +0 -1
  66. package/lib/__tests__/system/SampleParseSys.d.ts +0 -1
  67. package/lib/__tests__/system/SampleParseSys.js +0 -75
  68. package/lib/__tests__/system/SampleParseSys.js.map +0 -1
@@ -28,37 +28,31 @@
28
28
  */
29
29
  Object.defineProperty(exports, "__esModule", { value: true });
30
30
  exports.CaseInsensitiveInputStream = void 0;
31
- class CaseInsensitiveInputStream {
32
- // userData is an untyped identifierfor the stream, for string input use CharStreams.fromString()
33
- constructor(src) {
34
- this.src = src;
35
- }
36
- getText(interval) {
37
- return this.src.getText(interval);
38
- }
39
- consume() {
40
- this.src.consume();
31
+ const antlr4_1 = require("antlr4");
32
+ /**
33
+ * Converts char stream to lower case for case insensitive usage.
34
+ *
35
+ * @deprecated since 5.0.0. ApexLexer is generated with ANTLR 4.10
36
+ * `caseInsensitive` option enabled.
37
+ */
38
+ class CaseInsensitiveInputStream extends antlr4_1.CharStream {
39
+ constructor(data, decodeToUnicodeCodePoints = true) {
40
+ // Default to unicode code points
41
+ // CharStreams.fromString is always `new CharStream(data, true)`
42
+ // but `new CharStream(data)` defaults to false / UTF-16 code units
43
+ if (typeof data === "string") {
44
+ super(data, decodeToUnicodeCodePoints);
45
+ }
46
+ else {
47
+ super(data.toString(), decodeToUnicodeCodePoints);
48
+ }
41
49
  }
42
50
  LA(i) {
43
- return this.toLower(this.src.LA(i));
44
- }
45
- mark() {
46
- return this.src.mark();
47
- }
48
- release(marker) {
49
- this.src.release(marker);
50
- }
51
- get index() {
52
- return this.src.index;
53
- }
54
- seek(index) {
55
- return this.src.seek(index);
56
- }
57
- get size() {
58
- return this.src.size;
51
+ return this.toLower(super.LA(i));
59
52
  }
60
- get sourceName() {
61
- return this.src.sourceName;
53
+ LT(offset) {
54
+ // same behaviour as CharStream
55
+ return this.LA(offset);
62
56
  }
63
57
  // We only need basic upper to lower conversions
64
58
  toLower(c) {
@@ -1 +1 @@
1
- {"version":3,"file":"CaseInsensitiveInputStream.js","sourceRoot":"","sources":["../src/CaseInsensitiveInputStream.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;EA0BE;;;AAKF,MAAa,0BAA0B;IAGrC,iGAAiG;IACjG,YAAY,GAAe;QACzB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAED,OAAO,CAAC,QAAkB;QACxB,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,OAAO;QACL,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;IACrB,CAAC;IAED,EAAE,CAAC,CAAS;QACV,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IAED,OAAO,CAAC,MAAc;QACpB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;IACxB,CAAC;IAED,IAAI,CAAC,KAAa;QAChB,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IACvB,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;IAC7B,CAAC;IAED,gDAAgD;IACxC,OAAO,CAAC,CAAS;QACvB,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE;YACtB,OAAO,CAAC,GAAG,EAAE,CAAC;SACf;aAAM;YACL,OAAO,CAAC,CAAC;SACV;IACH,CAAC;CACF;AApDD,gEAoDC"}
1
+ {"version":3,"file":"CaseInsensitiveInputStream.js","sourceRoot":"","sources":["../src/CaseInsensitiveInputStream.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;EA0BE;;;AAEF,mCAAoC;AAEpC;;;;;GAKG;AACH,MAAa,0BAA2B,SAAQ,mBAAU;IAGxD,YACE,IAAyB,EACzB,4BAAqC,IAAI;QAEzC,iCAAiC;QACjC,gEAAgE;QAChE,mEAAmE;QACnE,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YAC5B,KAAK,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAC;SACxC;aAAM;YACL,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,yBAAyB,CAAC,CAAC;SACnD;IACH,CAAC;IAED,EAAE,CAAC,CAAS;QACV,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACnC,CAAC;IAED,EAAE,CAAC,MAAc;QACf,+BAA+B;QAC/B,OAAO,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;IACzB,CAAC;IAED,gDAAgD;IACxC,OAAO,CAAC,CAAS;QACvB,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE;YACtB,OAAO,CAAC,GAAG,EAAE,CAAC;SACf;aAAM;YACL,OAAO,CAAC,CAAC;SACV;IACH,CAAC;CACF;AAlCD,gEAkCC"}
package/lib/Check.d.ts ADDED
@@ -0,0 +1,36 @@
1
+ export interface CheckError {
2
+ column: number;
3
+ line: number;
4
+ message: string;
5
+ path: string;
6
+ }
7
+ export interface CheckResult {
8
+ extensions: string[];
9
+ errors: CheckError[];
10
+ status: number;
11
+ }
12
+ export interface ProjectCheckResult extends CheckResult {
13
+ name: string;
14
+ path: string;
15
+ pkg?: string;
16
+ }
17
+ /**
18
+ * Check Apex files in a path for syntax errors.
19
+ *
20
+ * @param pathStr Path to check. If not provided, uses process.argv or
21
+ * process.cwd().
22
+ * @param fileExt CSV list of file extensions to check
23
+ * (default: `.cls,.trigger,.apex`).
24
+ * @returns Result with status (0 ok, 1 error, 2 missing path) and syntax
25
+ * errors.
26
+ */
27
+ export declare function check(pathStr?: string, fileExt?: string): Promise<CheckResult>;
28
+ /**
29
+ * Check an Apex sfdx-project for syntax errors.
30
+ *
31
+ * @param pathStr Path to directory containing an sfdx-project.json at most 1
32
+ * level deep. If not found, reverts to `check()` behaviour.
33
+ * @returns Result for each package with status (0 ok, 1 error, 2 missing path)
34
+ * and syntax errors.
35
+ */
36
+ export declare function checkProject(pathStr?: string): Promise<ProjectCheckResult[]>;
package/lib/Check.js ADDED
@@ -0,0 +1,212 @@
1
+ "use strict";
2
+ /*
3
+ [The "BSD licence"]
4
+ Copyright (c) 2020 Kevin Jones
5
+ All rights reserved.
6
+
7
+ Redistribution and use in source and binary forms, with or without
8
+ modification, are permitted provided that the following conditions
9
+ are met:
10
+ 1. Redistributions of source code must retain the above copyright
11
+ notice, this list of conditions and the following disclaimer.
12
+ 2. Redistributions in binary form must reproduce the above copyright
13
+ notice, this list of conditions and the following disclaimer in the
14
+ documentation and/or other materials provided with the distribution.
15
+ 3. The name of the author may not be used to endorse or promote products
16
+ derived from this software without specific prior written permission.
17
+
18
+ THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
19
+ IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
20
+ OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
21
+ IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
22
+ INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
23
+ NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27
+ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
+ */
29
+ Object.defineProperty(exports, "__esModule", { value: true });
30
+ exports.checkProject = exports.check = void 0;
31
+ const promises_1 = require("node:fs/promises");
32
+ const node_fs_1 = require("node:fs");
33
+ const node_path_1 = require("node:path");
34
+ const ApexErrorListener_1 = require("./ApexErrorListener");
35
+ const ApexParserFactory_1 = require("./ApexParserFactory");
36
+ /**
37
+ * Check Apex files in a path for syntax errors.
38
+ *
39
+ * @param pathStr Path to check. If not provided, uses process.argv or
40
+ * process.cwd().
41
+ * @param fileExt CSV list of file extensions to check
42
+ * (default: `.cls,.trigger,.apex`).
43
+ * @returns Result with status (0 ok, 1 error, 2 missing path) and syntax
44
+ * errors.
45
+ */
46
+ async function check(pathStr, fileExt) {
47
+ const path = (0, node_path_1.resolve)(pathStr || process.argv[1] || process.cwd());
48
+ const ext = fileExt || process.argv[2];
49
+ const extensions = ext ? ext.split(",") : [".cls", ".trigger", ".apex"];
50
+ const result = {
51
+ status: 0,
52
+ extensions,
53
+ errors: [],
54
+ };
55
+ if (!(0, node_fs_1.existsSync)(path)) {
56
+ console.error(`Path does not exist, aborting: ${path}`);
57
+ result.status = 2;
58
+ }
59
+ else {
60
+ try {
61
+ result.errors = await parseFiles(path, extensions);
62
+ }
63
+ catch (err) {
64
+ console.error(`Error processing: ${path}`);
65
+ console.error(err);
66
+ result.status = 1;
67
+ }
68
+ }
69
+ process.exitCode = result.status;
70
+ return result;
71
+ }
72
+ exports.check = check;
73
+ /**
74
+ * Check an Apex sfdx-project for syntax errors.
75
+ *
76
+ * @param pathStr Path to directory containing an sfdx-project.json at most 1
77
+ * level deep. If not found, reverts to `check()` behaviour.
78
+ * @returns Result for each package with status (0 ok, 1 error, 2 missing path)
79
+ * and syntax errors.
80
+ */
81
+ async function checkProject(pathStr) {
82
+ const path = (0, node_path_1.resolve)(pathStr || process.argv[1] || process.cwd());
83
+ const ext = ".cls,.trigger";
84
+ const name = (0, node_path_1.basename)(path);
85
+ const project = findProjectFile(path, 1);
86
+ const packages = getProjectPackages(project);
87
+ if (packages.length == 0) {
88
+ console.error(`[${name}]: No valid SFDX project, checking all cls & trigger files`);
89
+ const result = await check(path, ext);
90
+ return [
91
+ {
92
+ name,
93
+ path: ".",
94
+ ...result,
95
+ },
96
+ ];
97
+ }
98
+ const projectDir = (0, node_path_1.dirname)(project);
99
+ const projectResult = await Promise.all(packages.map(async (pkg) => {
100
+ console.log(`[${name}]: Checking package "${pkg}"`);
101
+ const pkgPath = (0, node_path_1.resolve)(projectDir, pkg);
102
+ const result = await check(pkgPath, ext);
103
+ return {
104
+ name,
105
+ pkg,
106
+ path: (0, node_path_1.relative)(path, pkgPath),
107
+ ...result,
108
+ };
109
+ }));
110
+ process.exitCode = Math.max(...projectResult.map(r => r.status));
111
+ return projectResult;
112
+ }
113
+ exports.checkProject = checkProject;
114
+ class CheckApexErrorListener extends ApexErrorListener_1.ApexErrorListener {
115
+ constructor(relativePath) {
116
+ super();
117
+ this.errors = [];
118
+ this.path = relativePath;
119
+ }
120
+ apexSyntaxError(line, column, message) {
121
+ const error = {
122
+ column,
123
+ line,
124
+ message,
125
+ path: this.path,
126
+ };
127
+ console.log(JSON.stringify(error));
128
+ this.errors.push(error);
129
+ }
130
+ getErrors() {
131
+ return this.errors;
132
+ }
133
+ }
134
+ async function parseFiles(path, extensions) {
135
+ const parsers = {
136
+ ".cls": parser => parser.compilationUnit(),
137
+ ".trigger": parser => parser.triggerUnit(),
138
+ ".apex": parser => parser.anonymousUnit(),
139
+ };
140
+ const ext = Object.keys(parsers);
141
+ extensions.forEach(e => {
142
+ if (!ext.includes(e)) {
143
+ throw new Error(`Unknown extension '${e}' - one or more of [${ext.join(",")}] required.`);
144
+ }
145
+ });
146
+ const files = await getPathsInDir(path, extensions);
147
+ return extensions.flatMap(ext => parseByType(path, files, ext, parsers[ext]));
148
+ }
149
+ async function getPathsInDir(path, ext) {
150
+ const dirent = await (0, promises_1.readdir)(path, {
151
+ withFileTypes: true,
152
+ recursive: true,
153
+ });
154
+ return dirent.reduce((files, ent) => {
155
+ if (ent.isFile() && ext.includes((0, node_path_1.extname)(ent.name))) {
156
+ files.push((0, node_path_1.join)(ent.parentPath, ent.name));
157
+ }
158
+ return files;
159
+ }, []);
160
+ }
161
+ function parseByType(rootPath, files, endsWith, operation) {
162
+ let parsedCount = 0;
163
+ const errors = [];
164
+ files
165
+ .filter(name => name.endsWith(endsWith))
166
+ .forEach(file => {
167
+ if ((0, node_fs_1.lstatSync)(file).isFile()) {
168
+ const parser = ApexParserFactory_1.ApexParserFactory.createParser((0, node_fs_1.readFileSync)(file).toString());
169
+ const relativePath = (0, node_path_1.relative)(rootPath, file);
170
+ const listener = new CheckApexErrorListener(relativePath);
171
+ parser.addErrorListener(listener);
172
+ operation(parser);
173
+ const fileErrors = listener.getErrors();
174
+ if (fileErrors.length) {
175
+ console.log(`Found ${fileErrors.length} syntax errors in: ${relativePath}`);
176
+ errors.push(...fileErrors);
177
+ }
178
+ parsedCount += 1;
179
+ }
180
+ });
181
+ console.log(`Parsed ${parsedCount} '${endsWith}' files in: ${rootPath}`);
182
+ return errors;
183
+ }
184
+ function findProjectFile(wd, depth) {
185
+ const proj = "sfdx-project.json";
186
+ const files = (0, node_fs_1.readdirSync)(wd).filter(i => !/(^|\/)\.[^/.]/g.test(i));
187
+ if (files.includes(proj)) {
188
+ return (0, node_path_1.resolve)(wd, proj);
189
+ }
190
+ if (depth) {
191
+ const dirs = files
192
+ .map(f => (0, node_path_1.resolve)(wd, f))
193
+ .filter(f => (0, node_fs_1.lstatSync)(f).isDirectory());
194
+ const newDepth = depth - 1;
195
+ for (const d of dirs) {
196
+ const p = findProjectFile(d, newDepth);
197
+ if (p) {
198
+ return p;
199
+ }
200
+ }
201
+ }
202
+ return undefined;
203
+ }
204
+ function getProjectPackages(projectFilePath) {
205
+ if (!projectFilePath) {
206
+ return [];
207
+ }
208
+ const config = JSON.parse((0, node_fs_1.readFileSync)(projectFilePath, { encoding: "utf8" }));
209
+ const packages = config.packageDirectories || [];
210
+ return packages.flatMap(p => (p.path ? p.path.replace(/\\/g, "/") : []));
211
+ }
212
+ //# sourceMappingURL=Check.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Check.js","sourceRoot":"","sources":["../src/Check.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,5 @@
1
- import { ATN } from "antlr4ts/atn/ATN";
2
- import { CharStream } from "antlr4ts/CharStream";
3
- import { Lexer } from "antlr4ts/Lexer";
4
- import { Vocabulary } from "antlr4ts/Vocabulary";
5
- export declare class ApexLexer extends Lexer {
1
+ import { ATN, CharStream, DFA, Lexer } from "antlr4";
2
+ export default class ApexLexer extends Lexer {
6
3
  static readonly ABSTRACT = 1;
7
4
  static readonly AFTER = 2;
8
5
  static readonly BEFORE = 3;
@@ -178,103 +175,100 @@ export declare class ApexLexer extends Lexer {
178
175
  static readonly LAST_N_FISCAL_YEARS_N = 173;
179
176
  static readonly N_FISCAL_YEARS_AGO_N = 174;
180
177
  static readonly DateLiteral = 175;
181
- static readonly DateTimeLiteral = 176;
182
- static readonly IntegralCurrencyLiteral = 177;
183
- static readonly FIND = 178;
184
- static readonly EMAIL = 179;
185
- static readonly NAME = 180;
186
- static readonly PHONE = 181;
187
- static readonly SIDEBAR = 182;
188
- static readonly FIELDS = 183;
189
- static readonly METADATA = 184;
190
- static readonly PRICEBOOKID = 185;
191
- static readonly NETWORK = 186;
192
- static readonly SNIPPET = 187;
193
- static readonly TARGET_LENGTH = 188;
194
- static readonly DIVISION = 189;
195
- static readonly RETURNING = 190;
196
- static readonly LISTVIEW = 191;
197
- static readonly FindLiteral = 192;
198
- static readonly FindLiteralAlt = 193;
199
- static readonly IntegerLiteral = 194;
200
- static readonly LongLiteral = 195;
201
- static readonly NumberLiteral = 196;
202
- static readonly BooleanLiteral = 197;
203
- static readonly StringLiteral = 198;
204
- static readonly NullLiteral = 199;
205
- static readonly LPAREN = 200;
206
- static readonly RPAREN = 201;
207
- static readonly LBRACE = 202;
208
- static readonly RBRACE = 203;
209
- static readonly LBRACK = 204;
210
- static readonly RBRACK = 205;
211
- static readonly SEMI = 206;
212
- static readonly COMMA = 207;
213
- static readonly DOT = 208;
214
- static readonly ASSIGN = 209;
215
- static readonly GT = 210;
216
- static readonly LT = 211;
217
- static readonly BANG = 212;
218
- static readonly TILDE = 213;
219
- static readonly QUESTIONDOT = 214;
220
- static readonly QUESTION = 215;
221
- static readonly COLON = 216;
222
- static readonly EQUAL = 217;
223
- static readonly TRIPLEEQUAL = 218;
224
- static readonly NOTEQUAL = 219;
225
- static readonly LESSANDGREATER = 220;
226
- static readonly TRIPLENOTEQUAL = 221;
227
- static readonly AND = 222;
228
- static readonly OR = 223;
229
- static readonly COAL = 224;
230
- static readonly INC = 225;
231
- static readonly DEC = 226;
232
- static readonly ADD = 227;
233
- static readonly SUB = 228;
234
- static readonly MUL = 229;
235
- static readonly DIV = 230;
236
- static readonly BITAND = 231;
237
- static readonly BITOR = 232;
238
- static readonly CARET = 233;
239
- static readonly MAPTO = 234;
240
- static readonly ADD_ASSIGN = 235;
241
- static readonly SUB_ASSIGN = 236;
242
- static readonly MUL_ASSIGN = 237;
243
- static readonly DIV_ASSIGN = 238;
244
- static readonly AND_ASSIGN = 239;
245
- static readonly OR_ASSIGN = 240;
246
- static readonly XOR_ASSIGN = 241;
247
- static readonly LSHIFT_ASSIGN = 242;
248
- static readonly RSHIFT_ASSIGN = 243;
249
- static readonly URSHIFT_ASSIGN = 244;
250
- static readonly ATSIGN = 245;
251
- static readonly Identifier = 246;
252
- static readonly WS = 247;
253
- static readonly DOC_COMMENT = 248;
254
- static readonly COMMENT = 249;
255
- static readonly LINE_COMMENT = 250;
178
+ static readonly TimeLiteral = 176;
179
+ static readonly DateTimeLiteral = 177;
180
+ static readonly IntegralCurrencyLiteral = 178;
181
+ static readonly FIND = 179;
182
+ static readonly EMAIL = 180;
183
+ static readonly NAME = 181;
184
+ static readonly PHONE = 182;
185
+ static readonly SIDEBAR = 183;
186
+ static readonly FIELDS = 184;
187
+ static readonly METADATA = 185;
188
+ static readonly PRICEBOOKID = 186;
189
+ static readonly NETWORK = 187;
190
+ static readonly SNIPPET = 188;
191
+ static readonly TARGET_LENGTH = 189;
192
+ static readonly DIVISION = 190;
193
+ static readonly RETURNING = 191;
194
+ static readonly LISTVIEW = 192;
195
+ static readonly FindLiteral = 193;
196
+ static readonly FindLiteralAlt = 194;
197
+ static readonly IntegerLiteral = 195;
198
+ static readonly LongLiteral = 196;
199
+ static readonly NumberLiteral = 197;
200
+ static readonly BooleanLiteral = 198;
201
+ static readonly StringLiteral = 199;
202
+ static readonly NullLiteral = 200;
203
+ static readonly LPAREN = 201;
204
+ static readonly RPAREN = 202;
205
+ static readonly LBRACE = 203;
206
+ static readonly RBRACE = 204;
207
+ static readonly LBRACK = 205;
208
+ static readonly RBRACK = 206;
209
+ static readonly SEMI = 207;
210
+ static readonly COMMA = 208;
211
+ static readonly DOT = 209;
212
+ static readonly ASSIGN = 210;
213
+ static readonly GT = 211;
214
+ static readonly LT = 212;
215
+ static readonly BANG = 213;
216
+ static readonly TILDE = 214;
217
+ static readonly QUESTIONDOT = 215;
218
+ static readonly QUESTION = 216;
219
+ static readonly COLON = 217;
220
+ static readonly EQUAL = 218;
221
+ static readonly TRIPLEEQUAL = 219;
222
+ static readonly NOTEQUAL = 220;
223
+ static readonly LESSANDGREATER = 221;
224
+ static readonly TRIPLENOTEQUAL = 222;
225
+ static readonly AND = 223;
226
+ static readonly OR = 224;
227
+ static readonly COAL = 225;
228
+ static readonly INC = 226;
229
+ static readonly DEC = 227;
230
+ static readonly ADD = 228;
231
+ static readonly SUB = 229;
232
+ static readonly MUL = 230;
233
+ static readonly DIV = 231;
234
+ static readonly BITAND = 232;
235
+ static readonly BITOR = 233;
236
+ static readonly CARET = 234;
237
+ static readonly MAPTO = 235;
238
+ static readonly ADD_ASSIGN = 236;
239
+ static readonly SUB_ASSIGN = 237;
240
+ static readonly MUL_ASSIGN = 238;
241
+ static readonly DIV_ASSIGN = 239;
242
+ static readonly AND_ASSIGN = 240;
243
+ static readonly OR_ASSIGN = 241;
244
+ static readonly XOR_ASSIGN = 242;
245
+ static readonly LSHIFT_ASSIGN = 243;
246
+ static readonly RSHIFT_ASSIGN = 244;
247
+ static readonly URSHIFT_ASSIGN = 245;
248
+ static readonly ATSIGN = 246;
249
+ static readonly Identifier = 247;
250
+ static readonly WS = 248;
251
+ static readonly DOC_COMMENT = 249;
252
+ static readonly COMMENT = 250;
253
+ static readonly LINE_COMMENT = 251;
254
+ static readonly EOF: number;
256
255
  static readonly WHITESPACE_CHANNEL = 2;
257
256
  static readonly COMMENT_CHANNEL = 3;
258
257
  static readonly channelNames: string[];
258
+ static readonly literalNames: (string | null)[];
259
+ static readonly symbolicNames: (string | null)[];
259
260
  static readonly modeNames: string[];
260
261
  static readonly ruleNames: string[];
261
- private static readonly _LITERAL_NAMES;
262
- private static readonly _SYMBOLIC_NAMES;
263
- static readonly VOCABULARY: Vocabulary;
264
- get vocabulary(): Vocabulary;
265
262
  constructor(input: CharStream);
266
263
  get grammarFileName(): string;
264
+ get literalNames(): (string | null)[];
265
+ get symbolicNames(): (string | null)[];
267
266
  get ruleNames(): string[];
268
- get serializedATN(): string;
267
+ get serializedATN(): number[];
269
268
  get channelNames(): string[];
270
269
  get modeNames(): string[];
271
- private static readonly _serializedATNSegments;
272
- private static readonly _serializedATNSegment0;
273
- private static readonly _serializedATNSegment1;
274
- private static readonly _serializedATNSegment2;
275
- private static readonly _serializedATNSegment3;
276
- private static readonly _serializedATNSegment4;
277
- static readonly _serializedATN: string;
278
- static __ATN: ATN;
270
+ static readonly _serializedATN: number[];
271
+ private static __ATN;
279
272
  static get _ATN(): ATN;
273
+ static DecisionsToDFA: DFA[];
280
274
  }