yini-parser 1.0.0-alpha.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 (46) hide show
  1. package/CHANGELOG.md +0 -0
  2. package/LICENSE +201 -0
  3. package/README.md +120 -0
  4. package/dist/src/YINI.js +122 -0
  5. package/dist/src/config/env.js +15 -0
  6. package/dist/src/core/ErrorDataHandler.js +207 -0
  7. package/dist/src/core/YINIVisitor.js +856 -0
  8. package/dist/src/core/objectBuilder.js +166 -0
  9. package/dist/src/core/types.js +36 -0
  10. package/dist/src/grammar/YiniLexer.js +370 -0
  11. package/dist/src/grammar/YiniParser.js +2106 -0
  12. package/dist/src/grammar/YiniParserVisitor.js +14 -0
  13. package/dist/src/index.js +189 -0
  14. package/dist/src/parseEntry.js +155 -0
  15. package/dist/src/parsers/extractHeaderParts.js +103 -0
  16. package/dist/src/parsers/extractSignificantYiniLine.js +68 -0
  17. package/dist/src/parsers/parseBoolean.js +12 -0
  18. package/dist/src/parsers/parseNull.js +11 -0
  19. package/dist/src/parsers/parseNumber.js +49 -0
  20. package/dist/src/parsers/parseSectionHeader.js +111 -0
  21. package/dist/src/parsers/parseString.js +40 -0
  22. package/dist/src/utils/pathAndFileName.js +15 -0
  23. package/dist/src/utils/string.js +97 -0
  24. package/dist/src/utils/system.js +23 -0
  25. package/dist/src/yiniHelpers.js +141 -0
  26. package/dist/tests/integration/1-core-parsing/parse-bigger-section-nesting-as-object.test.js +83 -0
  27. package/dist/tests/integration/1-core-parsing/parse-section-nesting-w-classic-markers.test.js +170 -0
  28. package/dist/tests/integration/1-core-parsing/parse-section-nesting-w-nsh-markers.test.js +27 -0
  29. package/dist/tests/integration/1-core-parsing/read some values from level 1 and 2.test.js +77 -0
  30. package/dist/tests/integration/1-core-parsing/throw on bad section heads.test.js +162 -0
  31. package/dist/tests/integration/10-special-validation-modes/validation-modes.test.js +38 -0
  32. package/dist/tests/integration/2-file-structure-and-error/able to parse mixed case filenames.test.js +72 -0
  33. package/dist/tests/integration/2-file-structure-and-error/throw error on bad file extensions.test.js +36 -0
  34. package/dist/tests/integration/2-file-structure-and-error/throw error parsing bad content.test.js +80 -0
  35. package/dist/tests/smoke/A-general-smoke.test.js +259 -0
  36. package/dist/tests/smoke/B-parse-inline-smoke.test.js +270 -0
  37. package/dist/tests/smoke/C-traverse-file-smoke.test.js +141 -0
  38. package/dist/tests/smoke/D-parse-file-smoke.test.js +134 -0
  39. package/dist/tests/unit/parsers/extractHeaderParts.unit.test.js +490 -0
  40. package/dist/tests/unit/parsers/parseSectionHeader-classic.unit.test.js +421 -0
  41. package/dist/tests/unit/parsers/parseSectionHeader-nsh.unit.test.js +436 -0
  42. package/dist/tests/unit/parsers/parseSectionHeader-throw-on-invalid.unit.test.js +168 -0
  43. package/dist/tests/unit/utils/utils-pathAndFileName.unit.test.js +80 -0
  44. package/dist/tests/unit/utils/utils-string.unit.test.js +185 -0
  45. package/dist/tests/unit/yiniHelpers.unit.test.js +306 -0
  46. package/package.json +94 -0
@@ -0,0 +1,2106 @@
1
+ "use strict";
2
+ // Generated from grammar/v1.0.0-beta.7x/YiniParser.g4 by ANTLR 4.13.2
3
+ // noinspection ES6UnusedImports,JSUnusedGlobalSymbols,JSUnusedLocalSymbols
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.Boolean_literalContext = exports.String_concatContext = exports.String_literalContext = exports.Null_literalContext = exports.Number_literalContext = exports.ElementContext = exports.ElementsContext = exports.List_in_bracketsContext = exports.ListContext = exports.ObjectMemberContext = exports.ObjectMemberListContext = exports.Object_literalContext = exports.ValueContext = exports.Member_colon_listContext = exports.MemberContext = exports.Section_membersContext = exports.Terminal_lineContext = exports.SectionContext = exports.YiniContext = void 0;
6
+ const antlr4_1 = require("antlr4");
7
+ class YiniParser extends antlr4_1.Parser {
8
+ get grammarFileName() { return "YiniParser.g4"; }
9
+ get literalNames() { return YiniParser.literalNames; }
10
+ get symbolicNames() { return YiniParser.symbolicNames; }
11
+ get ruleNames() { return YiniParser.ruleNames; }
12
+ get serializedATN() { return YiniParser._serializedATN; }
13
+ createFailedPredicateException(predicate, message) {
14
+ return new antlr4_1.FailedPredicateException(this, predicate, message);
15
+ }
16
+ constructor(input) {
17
+ super(input);
18
+ this._interp = new antlr4_1.ParserATNSimulator(this, YiniParser._ATN, YiniParser.DecisionsToDFA, new antlr4_1.PredictionContextCache());
19
+ }
20
+ // @RuleVersion(0)
21
+ yini() {
22
+ let localctx = new YiniContext(this, this._ctx, this.state);
23
+ this.enterRule(localctx, 0, YiniParser.RULE_yini);
24
+ let _la;
25
+ try {
26
+ let _alt;
27
+ this.enterOuterAlt(localctx, 1);
28
+ {
29
+ this.state = 39;
30
+ this._errHandler.sync(this);
31
+ _la = this._input.LA(1);
32
+ if (_la === 28) {
33
+ {
34
+ this.state = 38;
35
+ this.match(YiniParser.SHEBANG);
36
+ }
37
+ }
38
+ this.state = 44;
39
+ this._errHandler.sync(this);
40
+ _alt = this._interp.adaptivePredict(this._input, 1, this._ctx);
41
+ while (_alt !== 2 && _alt !== antlr4_1.ATN.INVALID_ALT_NUMBER) {
42
+ if (_alt === 1) {
43
+ {
44
+ {
45
+ this.state = 41;
46
+ this.match(YiniParser.INLINE_COMMENT);
47
+ }
48
+ }
49
+ }
50
+ this.state = 46;
51
+ this._errHandler.sync(this);
52
+ _alt = this._interp.adaptivePredict(this._input, 1, this._ctx);
53
+ }
54
+ this.state = 50;
55
+ this._errHandler.sync(this);
56
+ _alt = this._interp.adaptivePredict(this._input, 2, this._ctx);
57
+ while (_alt !== 2 && _alt !== antlr4_1.ATN.INVALID_ALT_NUMBER) {
58
+ if (_alt === 1) {
59
+ {
60
+ {
61
+ this.state = 47;
62
+ this.match(YiniParser.NL);
63
+ }
64
+ }
65
+ }
66
+ this.state = 52;
67
+ this._errHandler.sync(this);
68
+ _alt = this._interp.adaptivePredict(this._input, 2, this._ctx);
69
+ }
70
+ this.state = 54;
71
+ this._errHandler.sync(this);
72
+ _la = this._input.LA(1);
73
+ if (_la === 1) {
74
+ {
75
+ this.state = 53;
76
+ this.match(YiniParser.YINI_MARKER);
77
+ }
78
+ }
79
+ this.state = 59;
80
+ this._errHandler.sync(this);
81
+ _la = this._input.LA(1);
82
+ while (_la === 46) {
83
+ {
84
+ {
85
+ this.state = 56;
86
+ this.match(YiniParser.INLINE_COMMENT);
87
+ }
88
+ }
89
+ this.state = 61;
90
+ this._errHandler.sync(this);
91
+ _la = this._input.LA(1);
92
+ }
93
+ this.state = 65;
94
+ this._errHandler.sync(this);
95
+ _la = this._input.LA(1);
96
+ while (_la === 40) {
97
+ {
98
+ {
99
+ this.state = 62;
100
+ this.match(YiniParser.NL);
101
+ }
102
+ }
103
+ this.state = 67;
104
+ this._errHandler.sync(this);
105
+ _la = this._input.LA(1);
106
+ }
107
+ this.state = 69;
108
+ this._errHandler.sync(this);
109
+ _la = this._input.LA(1);
110
+ do {
111
+ {
112
+ {
113
+ this.state = 68;
114
+ this.section();
115
+ }
116
+ }
117
+ this.state = 71;
118
+ this._errHandler.sync(this);
119
+ _la = this._input.LA(1);
120
+ } while (_la === 2 || _la === 30);
121
+ this.state = 76;
122
+ this._errHandler.sync(this);
123
+ _la = this._input.LA(1);
124
+ while (_la === 40) {
125
+ {
126
+ {
127
+ this.state = 73;
128
+ this.match(YiniParser.NL);
129
+ }
130
+ }
131
+ this.state = 78;
132
+ this._errHandler.sync(this);
133
+ _la = this._input.LA(1);
134
+ }
135
+ this.state = 80;
136
+ this._errHandler.sync(this);
137
+ _la = this._input.LA(1);
138
+ if (_la === 3) {
139
+ {
140
+ this.state = 79;
141
+ this.terminal_line();
142
+ }
143
+ }
144
+ this.state = 83;
145
+ this._errHandler.sync(this);
146
+ switch (this._interp.adaptivePredict(this._input, 9, this._ctx)) {
147
+ case 1:
148
+ {
149
+ this.state = 82;
150
+ this.match(YiniParser.EOF);
151
+ }
152
+ break;
153
+ }
154
+ }
155
+ }
156
+ catch (re) {
157
+ if (re instanceof antlr4_1.RecognitionException) {
158
+ localctx.exception = re;
159
+ this._errHandler.reportError(this, re);
160
+ this._errHandler.recover(this, re);
161
+ }
162
+ else {
163
+ throw re;
164
+ }
165
+ }
166
+ finally {
167
+ this.exitRule();
168
+ }
169
+ return localctx;
170
+ }
171
+ // @RuleVersion(0)
172
+ section() {
173
+ let localctx = new SectionContext(this, this._ctx, this.state);
174
+ this.enterRule(localctx, 2, YiniParser.RULE_section);
175
+ try {
176
+ this.enterOuterAlt(localctx, 1);
177
+ {
178
+ this.state = 86;
179
+ this._errHandler.sync(this);
180
+ switch (this._interp.adaptivePredict(this._input, 10, this._ctx)) {
181
+ case 1:
182
+ {
183
+ this.state = 85;
184
+ this.match(YiniParser.SECTION_HEAD);
185
+ }
186
+ break;
187
+ }
188
+ this.state = 88;
189
+ this.section_members();
190
+ }
191
+ }
192
+ catch (re) {
193
+ if (re instanceof antlr4_1.RecognitionException) {
194
+ localctx.exception = re;
195
+ this._errHandler.reportError(this, re);
196
+ this._errHandler.recover(this, re);
197
+ }
198
+ else {
199
+ throw re;
200
+ }
201
+ }
202
+ finally {
203
+ this.exitRule();
204
+ }
205
+ return localctx;
206
+ }
207
+ // @RuleVersion(0)
208
+ terminal_line() {
209
+ let localctx = new Terminal_lineContext(this, this._ctx, this.state);
210
+ this.enterRule(localctx, 4, YiniParser.RULE_terminal_line);
211
+ let _la;
212
+ try {
213
+ this.enterOuterAlt(localctx, 1);
214
+ {
215
+ this.state = 90;
216
+ this.match(YiniParser.TERMINAL_TOKEN);
217
+ this.state = 105;
218
+ this._errHandler.sync(this);
219
+ switch (this._interp.adaptivePredict(this._input, 14, this._ctx)) {
220
+ case 1:
221
+ {
222
+ this.state = 92;
223
+ this._errHandler.sync(this);
224
+ _la = this._input.LA(1);
225
+ do {
226
+ {
227
+ {
228
+ this.state = 91;
229
+ this.match(YiniParser.NL);
230
+ }
231
+ }
232
+ this.state = 94;
233
+ this._errHandler.sync(this);
234
+ _la = this._input.LA(1);
235
+ } while (_la === 40);
236
+ }
237
+ break;
238
+ case 2:
239
+ {
240
+ this.state = 97;
241
+ this._errHandler.sync(this);
242
+ _la = this._input.LA(1);
243
+ if (_la === 46) {
244
+ {
245
+ this.state = 96;
246
+ this.match(YiniParser.INLINE_COMMENT);
247
+ }
248
+ }
249
+ this.state = 102;
250
+ this._errHandler.sync(this);
251
+ _la = this._input.LA(1);
252
+ while (_la === 40) {
253
+ {
254
+ {
255
+ this.state = 99;
256
+ this.match(YiniParser.NL);
257
+ }
258
+ }
259
+ this.state = 104;
260
+ this._errHandler.sync(this);
261
+ _la = this._input.LA(1);
262
+ }
263
+ }
264
+ break;
265
+ }
266
+ }
267
+ }
268
+ catch (re) {
269
+ if (re instanceof antlr4_1.RecognitionException) {
270
+ localctx.exception = re;
271
+ this._errHandler.reportError(this, re);
272
+ this._errHandler.recover(this, re);
273
+ }
274
+ else {
275
+ throw re;
276
+ }
277
+ }
278
+ finally {
279
+ this.exitRule();
280
+ }
281
+ return localctx;
282
+ }
283
+ // @RuleVersion(0)
284
+ section_members() {
285
+ let localctx = new Section_membersContext(this, this._ctx, this.state);
286
+ this.enterRule(localctx, 6, YiniParser.RULE_section_members);
287
+ try {
288
+ let _alt;
289
+ this.enterOuterAlt(localctx, 1);
290
+ {
291
+ this.state = 108;
292
+ this._errHandler.sync(this);
293
+ _alt = 1;
294
+ do {
295
+ switch (_alt) {
296
+ case 1:
297
+ {
298
+ {
299
+ this.state = 107;
300
+ this.member();
301
+ }
302
+ }
303
+ break;
304
+ default:
305
+ throw new antlr4_1.NoViableAltException(this);
306
+ }
307
+ this.state = 110;
308
+ this._errHandler.sync(this);
309
+ _alt = this._interp.adaptivePredict(this._input, 15, this._ctx);
310
+ } while (_alt !== 2 && _alt !== antlr4_1.ATN.INVALID_ALT_NUMBER);
311
+ }
312
+ }
313
+ catch (re) {
314
+ if (re instanceof antlr4_1.RecognitionException) {
315
+ localctx.exception = re;
316
+ this._errHandler.reportError(this, re);
317
+ this._errHandler.recover(this, re);
318
+ }
319
+ else {
320
+ throw re;
321
+ }
322
+ }
323
+ finally {
324
+ this.exitRule();
325
+ }
326
+ return localctx;
327
+ }
328
+ // @RuleVersion(0)
329
+ member() {
330
+ let localctx = new MemberContext(this, this._ctx, this.state);
331
+ this.enterRule(localctx, 8, YiniParser.RULE_member);
332
+ let _la;
333
+ try {
334
+ let _alt;
335
+ this.state = 133;
336
+ this._errHandler.sync(this);
337
+ switch (this._interp.adaptivePredict(this._input, 21, this._ctx)) {
338
+ case 1:
339
+ this.enterOuterAlt(localctx, 1);
340
+ {
341
+ this.state = 112;
342
+ this.match(YiniParser.KEY);
343
+ this.state = 114;
344
+ this._errHandler.sync(this);
345
+ _la = this._input.LA(1);
346
+ if (_la === 42) {
347
+ {
348
+ this.state = 113;
349
+ this.match(YiniParser.WS);
350
+ }
351
+ }
352
+ this.state = 116;
353
+ this.match(YiniParser.EQ);
354
+ this.state = 118;
355
+ this._errHandler.sync(this);
356
+ _la = this._input.LA(1);
357
+ if (_la === 42) {
358
+ {
359
+ this.state = 117;
360
+ this.match(YiniParser.WS);
361
+ }
362
+ }
363
+ this.state = 121;
364
+ this._errHandler.sync(this);
365
+ _la = this._input.LA(1);
366
+ if (((((_la - 14)) & ~0x1F) === 0 && ((1 << (_la - 14)) & 572933) !== 0)) {
367
+ {
368
+ this.state = 120;
369
+ this.value();
370
+ }
371
+ }
372
+ this.state = 124;
373
+ this._errHandler.sync(this);
374
+ _alt = 1;
375
+ do {
376
+ switch (_alt) {
377
+ case 1:
378
+ {
379
+ {
380
+ this.state = 123;
381
+ this.match(YiniParser.NL);
382
+ }
383
+ }
384
+ break;
385
+ default:
386
+ throw new antlr4_1.NoViableAltException(this);
387
+ }
388
+ this.state = 126;
389
+ this._errHandler.sync(this);
390
+ _alt = this._interp.adaptivePredict(this._input, 19, this._ctx);
391
+ } while (_alt !== 2 && _alt !== antlr4_1.ATN.INVALID_ALT_NUMBER);
392
+ }
393
+ break;
394
+ case 2:
395
+ this.enterOuterAlt(localctx, 2);
396
+ {
397
+ this.state = 128;
398
+ this.member_colon_list();
399
+ }
400
+ break;
401
+ case 3:
402
+ this.enterOuterAlt(localctx, 3);
403
+ {
404
+ this.state = 129;
405
+ this.match(YiniParser.SECTION_HEAD);
406
+ this.state = 131;
407
+ this._errHandler.sync(this);
408
+ switch (this._interp.adaptivePredict(this._input, 20, this._ctx)) {
409
+ case 1:
410
+ {
411
+ this.state = 130;
412
+ this.section_members();
413
+ }
414
+ break;
415
+ }
416
+ }
417
+ break;
418
+ }
419
+ }
420
+ catch (re) {
421
+ if (re instanceof antlr4_1.RecognitionException) {
422
+ localctx.exception = re;
423
+ this._errHandler.reportError(this, re);
424
+ this._errHandler.recover(this, re);
425
+ }
426
+ else {
427
+ throw re;
428
+ }
429
+ }
430
+ finally {
431
+ this.exitRule();
432
+ }
433
+ return localctx;
434
+ }
435
+ // @RuleVersion(0)
436
+ member_colon_list() {
437
+ let localctx = new Member_colon_listContext(this, this._ctx, this.state);
438
+ this.enterRule(localctx, 10, YiniParser.RULE_member_colon_list);
439
+ let _la;
440
+ try {
441
+ let _alt;
442
+ this.enterOuterAlt(localctx, 1);
443
+ {
444
+ this.state = 135;
445
+ this.match(YiniParser.KEY);
446
+ this.state = 136;
447
+ this.match(YiniParser.COLON);
448
+ this.state = 138;
449
+ this._errHandler.sync(this);
450
+ _la = this._input.LA(1);
451
+ if (_la === 42) {
452
+ {
453
+ this.state = 137;
454
+ this.match(YiniParser.WS);
455
+ }
456
+ }
457
+ this.state = 141;
458
+ this._errHandler.sync(this);
459
+ switch (this._interp.adaptivePredict(this._input, 23, this._ctx)) {
460
+ case 1:
461
+ {
462
+ this.state = 140;
463
+ this.elements();
464
+ }
465
+ break;
466
+ }
467
+ this.state = 144;
468
+ this._errHandler.sync(this);
469
+ _alt = 1;
470
+ do {
471
+ switch (_alt) {
472
+ case 1:
473
+ {
474
+ {
475
+ this.state = 143;
476
+ this.match(YiniParser.NL);
477
+ }
478
+ }
479
+ break;
480
+ default:
481
+ throw new antlr4_1.NoViableAltException(this);
482
+ }
483
+ this.state = 146;
484
+ this._errHandler.sync(this);
485
+ _alt = this._interp.adaptivePredict(this._input, 24, this._ctx);
486
+ } while (_alt !== 2 && _alt !== antlr4_1.ATN.INVALID_ALT_NUMBER);
487
+ }
488
+ }
489
+ catch (re) {
490
+ if (re instanceof antlr4_1.RecognitionException) {
491
+ localctx.exception = re;
492
+ this._errHandler.reportError(this, re);
493
+ this._errHandler.recover(this, re);
494
+ }
495
+ else {
496
+ throw re;
497
+ }
498
+ }
499
+ finally {
500
+ this.exitRule();
501
+ }
502
+ return localctx;
503
+ }
504
+ // @RuleVersion(0)
505
+ value() {
506
+ let localctx = new ValueContext(this, this._ctx, this.state);
507
+ this.enterRule(localctx, 12, YiniParser.RULE_value);
508
+ try {
509
+ this.state = 154;
510
+ this._errHandler.sync(this);
511
+ switch (this._input.LA(1)) {
512
+ case 25:
513
+ this.enterOuterAlt(localctx, 1);
514
+ {
515
+ this.state = 148;
516
+ this.null_literal();
517
+ }
518
+ break;
519
+ case 33:
520
+ this.enterOuterAlt(localctx, 2);
521
+ {
522
+ this.state = 149;
523
+ this.string_literal();
524
+ }
525
+ break;
526
+ case 29:
527
+ this.enterOuterAlt(localctx, 3);
528
+ {
529
+ this.state = 150;
530
+ this.number_literal();
531
+ }
532
+ break;
533
+ case 23:
534
+ case 24:
535
+ this.enterOuterAlt(localctx, 4);
536
+ {
537
+ this.state = 151;
538
+ this.boolean_literal();
539
+ }
540
+ break;
541
+ case 14:
542
+ case 27:
543
+ this.enterOuterAlt(localctx, 5);
544
+ {
545
+ this.state = 152;
546
+ this.list_in_brackets();
547
+ }
548
+ break;
549
+ case 16:
550
+ case 26:
551
+ this.enterOuterAlt(localctx, 6);
552
+ {
553
+ this.state = 153;
554
+ this.object_literal();
555
+ }
556
+ break;
557
+ default:
558
+ throw new antlr4_1.NoViableAltException(this);
559
+ }
560
+ }
561
+ catch (re) {
562
+ if (re instanceof antlr4_1.RecognitionException) {
563
+ localctx.exception = re;
564
+ this._errHandler.reportError(this, re);
565
+ this._errHandler.recover(this, re);
566
+ }
567
+ else {
568
+ throw re;
569
+ }
570
+ }
571
+ finally {
572
+ this.exitRule();
573
+ }
574
+ return localctx;
575
+ }
576
+ // @RuleVersion(0)
577
+ object_literal() {
578
+ let localctx = new Object_literalContext(this, this._ctx, this.state);
579
+ this.enterRule(localctx, 14, YiniParser.RULE_object_literal);
580
+ let _la;
581
+ try {
582
+ let _alt;
583
+ this.state = 178;
584
+ this._errHandler.sync(this);
585
+ switch (this._input.LA(1)) {
586
+ case 16:
587
+ this.enterOuterAlt(localctx, 1);
588
+ {
589
+ this.state = 156;
590
+ this.match(YiniParser.OC);
591
+ this.state = 160;
592
+ this._errHandler.sync(this);
593
+ _la = this._input.LA(1);
594
+ while (_la === 40) {
595
+ {
596
+ {
597
+ this.state = 157;
598
+ this.match(YiniParser.NL);
599
+ }
600
+ }
601
+ this.state = 162;
602
+ this._errHandler.sync(this);
603
+ _la = this._input.LA(1);
604
+ }
605
+ this.state = 163;
606
+ this.objectMemberList();
607
+ this.state = 167;
608
+ this._errHandler.sync(this);
609
+ _la = this._input.LA(1);
610
+ while (_la === 40) {
611
+ {
612
+ {
613
+ this.state = 164;
614
+ this.match(YiniParser.NL);
615
+ }
616
+ }
617
+ this.state = 169;
618
+ this._errHandler.sync(this);
619
+ _la = this._input.LA(1);
620
+ }
621
+ this.state = 170;
622
+ this.match(YiniParser.CC);
623
+ this.state = 174;
624
+ this._errHandler.sync(this);
625
+ _alt = this._interp.adaptivePredict(this._input, 28, this._ctx);
626
+ while (_alt !== 2 && _alt !== antlr4_1.ATN.INVALID_ALT_NUMBER) {
627
+ if (_alt === 1) {
628
+ {
629
+ {
630
+ this.state = 171;
631
+ this.match(YiniParser.NL);
632
+ }
633
+ }
634
+ }
635
+ this.state = 176;
636
+ this._errHandler.sync(this);
637
+ _alt = this._interp.adaptivePredict(this._input, 28, this._ctx);
638
+ }
639
+ }
640
+ break;
641
+ case 26:
642
+ this.enterOuterAlt(localctx, 2);
643
+ {
644
+ this.state = 177;
645
+ this.match(YiniParser.EMPTY_OBJECT);
646
+ }
647
+ break;
648
+ default:
649
+ throw new antlr4_1.NoViableAltException(this);
650
+ }
651
+ }
652
+ catch (re) {
653
+ if (re instanceof antlr4_1.RecognitionException) {
654
+ localctx.exception = re;
655
+ this._errHandler.reportError(this, re);
656
+ this._errHandler.recover(this, re);
657
+ }
658
+ else {
659
+ throw re;
660
+ }
661
+ }
662
+ finally {
663
+ this.exitRule();
664
+ }
665
+ return localctx;
666
+ }
667
+ // @RuleVersion(0)
668
+ objectMemberList() {
669
+ let localctx = new ObjectMemberListContext(this, this._ctx, this.state);
670
+ this.enterRule(localctx, 16, YiniParser.RULE_objectMemberList);
671
+ let _la;
672
+ try {
673
+ let _alt;
674
+ this.state = 198;
675
+ this._errHandler.sync(this);
676
+ switch (this._input.LA(1)) {
677
+ case 30:
678
+ this.enterOuterAlt(localctx, 1);
679
+ {
680
+ this.state = 180;
681
+ this.objectMember();
682
+ this.state = 191;
683
+ this._errHandler.sync(this);
684
+ _alt = this._interp.adaptivePredict(this._input, 31, this._ctx);
685
+ while (_alt !== 2 && _alt !== antlr4_1.ATN.INVALID_ALT_NUMBER) {
686
+ if (_alt === 1) {
687
+ {
688
+ {
689
+ this.state = 181;
690
+ this.match(YiniParser.COMMA);
691
+ this.state = 185;
692
+ this._errHandler.sync(this);
693
+ _la = this._input.LA(1);
694
+ while (_la === 40) {
695
+ {
696
+ {
697
+ this.state = 182;
698
+ this.match(YiniParser.NL);
699
+ }
700
+ }
701
+ this.state = 187;
702
+ this._errHandler.sync(this);
703
+ _la = this._input.LA(1);
704
+ }
705
+ this.state = 188;
706
+ this.objectMember();
707
+ }
708
+ }
709
+ }
710
+ this.state = 193;
711
+ this._errHandler.sync(this);
712
+ _alt = this._interp.adaptivePredict(this._input, 31, this._ctx);
713
+ }
714
+ this.state = 195;
715
+ this._errHandler.sync(this);
716
+ _la = this._input.LA(1);
717
+ if (_la === 12) {
718
+ {
719
+ this.state = 194;
720
+ this.match(YiniParser.COMMA);
721
+ }
722
+ }
723
+ }
724
+ break;
725
+ case 26:
726
+ this.enterOuterAlt(localctx, 2);
727
+ {
728
+ this.state = 197;
729
+ this.match(YiniParser.EMPTY_OBJECT);
730
+ }
731
+ break;
732
+ default:
733
+ throw new antlr4_1.NoViableAltException(this);
734
+ }
735
+ }
736
+ catch (re) {
737
+ if (re instanceof antlr4_1.RecognitionException) {
738
+ localctx.exception = re;
739
+ this._errHandler.reportError(this, re);
740
+ this._errHandler.recover(this, re);
741
+ }
742
+ else {
743
+ throw re;
744
+ }
745
+ }
746
+ finally {
747
+ this.exitRule();
748
+ }
749
+ return localctx;
750
+ }
751
+ // @RuleVersion(0)
752
+ objectMember() {
753
+ let localctx = new ObjectMemberContext(this, this._ctx, this.state);
754
+ this.enterRule(localctx, 18, YiniParser.RULE_objectMember);
755
+ let _la;
756
+ try {
757
+ this.enterOuterAlt(localctx, 1);
758
+ {
759
+ this.state = 200;
760
+ this.match(YiniParser.KEY);
761
+ this.state = 202;
762
+ this._errHandler.sync(this);
763
+ _la = this._input.LA(1);
764
+ if (_la === 42) {
765
+ {
766
+ this.state = 201;
767
+ this.match(YiniParser.WS);
768
+ }
769
+ }
770
+ this.state = 204;
771
+ this.match(YiniParser.EQ);
772
+ this.state = 208;
773
+ this._errHandler.sync(this);
774
+ _la = this._input.LA(1);
775
+ while (_la === 40) {
776
+ {
777
+ {
778
+ this.state = 205;
779
+ this.match(YiniParser.NL);
780
+ }
781
+ }
782
+ this.state = 210;
783
+ this._errHandler.sync(this);
784
+ _la = this._input.LA(1);
785
+ }
786
+ this.state = 211;
787
+ this.value();
788
+ }
789
+ }
790
+ catch (re) {
791
+ if (re instanceof antlr4_1.RecognitionException) {
792
+ localctx.exception = re;
793
+ this._errHandler.reportError(this, re);
794
+ this._errHandler.recover(this, re);
795
+ }
796
+ else {
797
+ throw re;
798
+ }
799
+ }
800
+ finally {
801
+ this.exitRule();
802
+ }
803
+ return localctx;
804
+ }
805
+ // @RuleVersion(0)
806
+ list() {
807
+ let localctx = new ListContext(this, this._ctx, this.state);
808
+ this.enterRule(localctx, 20, YiniParser.RULE_list);
809
+ try {
810
+ this.state = 215;
811
+ this._errHandler.sync(this);
812
+ switch (this._interp.adaptivePredict(this._input, 36, this._ctx)) {
813
+ case 1:
814
+ this.enterOuterAlt(localctx, 1);
815
+ {
816
+ this.state = 213;
817
+ this.elements();
818
+ }
819
+ break;
820
+ case 2:
821
+ this.enterOuterAlt(localctx, 2);
822
+ {
823
+ this.state = 214;
824
+ this.list_in_brackets();
825
+ }
826
+ break;
827
+ }
828
+ }
829
+ catch (re) {
830
+ if (re instanceof antlr4_1.RecognitionException) {
831
+ localctx.exception = re;
832
+ this._errHandler.reportError(this, re);
833
+ this._errHandler.recover(this, re);
834
+ }
835
+ else {
836
+ throw re;
837
+ }
838
+ }
839
+ finally {
840
+ this.exitRule();
841
+ }
842
+ return localctx;
843
+ }
844
+ // @RuleVersion(0)
845
+ list_in_brackets() {
846
+ let localctx = new List_in_bracketsContext(this, this._ctx, this.state);
847
+ this.enterRule(localctx, 22, YiniParser.RULE_list_in_brackets);
848
+ let _la;
849
+ try {
850
+ let _alt;
851
+ this.state = 234;
852
+ this._errHandler.sync(this);
853
+ switch (this._input.LA(1)) {
854
+ case 14:
855
+ this.enterOuterAlt(localctx, 1);
856
+ {
857
+ this.state = 217;
858
+ this.match(YiniParser.OB);
859
+ this.state = 221;
860
+ this._errHandler.sync(this);
861
+ _alt = this._interp.adaptivePredict(this._input, 37, this._ctx);
862
+ while (_alt !== 2 && _alt !== antlr4_1.ATN.INVALID_ALT_NUMBER) {
863
+ if (_alt === 1) {
864
+ {
865
+ {
866
+ this.state = 218;
867
+ this.match(YiniParser.NL);
868
+ }
869
+ }
870
+ }
871
+ this.state = 223;
872
+ this._errHandler.sync(this);
873
+ _alt = this._interp.adaptivePredict(this._input, 37, this._ctx);
874
+ }
875
+ this.state = 224;
876
+ this.elements();
877
+ this.state = 228;
878
+ this._errHandler.sync(this);
879
+ _la = this._input.LA(1);
880
+ while (_la === 40) {
881
+ {
882
+ {
883
+ this.state = 225;
884
+ this.match(YiniParser.NL);
885
+ }
886
+ }
887
+ this.state = 230;
888
+ this._errHandler.sync(this);
889
+ _la = this._input.LA(1);
890
+ }
891
+ this.state = 231;
892
+ this.match(YiniParser.CB);
893
+ }
894
+ break;
895
+ case 27:
896
+ this.enterOuterAlt(localctx, 2);
897
+ {
898
+ this.state = 233;
899
+ this.match(YiniParser.EMPTY_LIST);
900
+ }
901
+ break;
902
+ default:
903
+ throw new antlr4_1.NoViableAltException(this);
904
+ }
905
+ }
906
+ catch (re) {
907
+ if (re instanceof antlr4_1.RecognitionException) {
908
+ localctx.exception = re;
909
+ this._errHandler.reportError(this, re);
910
+ this._errHandler.recover(this, re);
911
+ }
912
+ else {
913
+ throw re;
914
+ }
915
+ }
916
+ finally {
917
+ this.exitRule();
918
+ }
919
+ return localctx;
920
+ }
921
+ // @RuleVersion(0)
922
+ elements() {
923
+ let localctx = new ElementsContext(this, this._ctx, this.state);
924
+ this.enterRule(localctx, 24, YiniParser.RULE_elements);
925
+ let _la;
926
+ try {
927
+ this.state = 244;
928
+ this._errHandler.sync(this);
929
+ switch (this._interp.adaptivePredict(this._input, 41, this._ctx)) {
930
+ case 1:
931
+ this.enterOuterAlt(localctx, 1);
932
+ {
933
+ this.state = 236;
934
+ this.element();
935
+ this.state = 238;
936
+ this._errHandler.sync(this);
937
+ _la = this._input.LA(1);
938
+ if (_la === 12) {
939
+ {
940
+ this.state = 237;
941
+ this.match(YiniParser.COMMA);
942
+ }
943
+ }
944
+ }
945
+ break;
946
+ case 2:
947
+ this.enterOuterAlt(localctx, 2);
948
+ {
949
+ this.state = 240;
950
+ this.element();
951
+ this.state = 241;
952
+ this.match(YiniParser.COMMA);
953
+ this.state = 242;
954
+ this.elements();
955
+ }
956
+ break;
957
+ }
958
+ }
959
+ catch (re) {
960
+ if (re instanceof antlr4_1.RecognitionException) {
961
+ localctx.exception = re;
962
+ this._errHandler.reportError(this, re);
963
+ this._errHandler.recover(this, re);
964
+ }
965
+ else {
966
+ throw re;
967
+ }
968
+ }
969
+ finally {
970
+ this.exitRule();
971
+ }
972
+ return localctx;
973
+ }
974
+ // @RuleVersion(0)
975
+ element() {
976
+ let localctx = new ElementContext(this, this._ctx, this.state);
977
+ this.enterRule(localctx, 26, YiniParser.RULE_element);
978
+ let _la;
979
+ try {
980
+ let _alt;
981
+ this.state = 272;
982
+ this._errHandler.sync(this);
983
+ switch (this._interp.adaptivePredict(this._input, 46, this._ctx)) {
984
+ case 1:
985
+ this.enterOuterAlt(localctx, 1);
986
+ {
987
+ this.state = 249;
988
+ this._errHandler.sync(this);
989
+ _la = this._input.LA(1);
990
+ while (_la === 40) {
991
+ {
992
+ {
993
+ this.state = 246;
994
+ this.match(YiniParser.NL);
995
+ }
996
+ }
997
+ this.state = 251;
998
+ this._errHandler.sync(this);
999
+ _la = this._input.LA(1);
1000
+ }
1001
+ this.state = 252;
1002
+ this.value();
1003
+ this.state = 256;
1004
+ this._errHandler.sync(this);
1005
+ _alt = this._interp.adaptivePredict(this._input, 43, this._ctx);
1006
+ while (_alt !== 2 && _alt !== antlr4_1.ATN.INVALID_ALT_NUMBER) {
1007
+ if (_alt === 1) {
1008
+ {
1009
+ {
1010
+ this.state = 253;
1011
+ this.match(YiniParser.NL);
1012
+ }
1013
+ }
1014
+ }
1015
+ this.state = 258;
1016
+ this._errHandler.sync(this);
1017
+ _alt = this._interp.adaptivePredict(this._input, 43, this._ctx);
1018
+ }
1019
+ }
1020
+ break;
1021
+ case 2:
1022
+ this.enterOuterAlt(localctx, 2);
1023
+ {
1024
+ this.state = 262;
1025
+ this._errHandler.sync(this);
1026
+ _la = this._input.LA(1);
1027
+ while (_la === 40) {
1028
+ {
1029
+ {
1030
+ this.state = 259;
1031
+ this.match(YiniParser.NL);
1032
+ }
1033
+ }
1034
+ this.state = 264;
1035
+ this._errHandler.sync(this);
1036
+ _la = this._input.LA(1);
1037
+ }
1038
+ this.state = 265;
1039
+ this.list_in_brackets();
1040
+ this.state = 269;
1041
+ this._errHandler.sync(this);
1042
+ _alt = this._interp.adaptivePredict(this._input, 45, this._ctx);
1043
+ while (_alt !== 2 && _alt !== antlr4_1.ATN.INVALID_ALT_NUMBER) {
1044
+ if (_alt === 1) {
1045
+ {
1046
+ {
1047
+ this.state = 266;
1048
+ this.match(YiniParser.NL);
1049
+ }
1050
+ }
1051
+ }
1052
+ this.state = 271;
1053
+ this._errHandler.sync(this);
1054
+ _alt = this._interp.adaptivePredict(this._input, 45, this._ctx);
1055
+ }
1056
+ }
1057
+ break;
1058
+ }
1059
+ }
1060
+ catch (re) {
1061
+ if (re instanceof antlr4_1.RecognitionException) {
1062
+ localctx.exception = re;
1063
+ this._errHandler.reportError(this, re);
1064
+ this._errHandler.recover(this, re);
1065
+ }
1066
+ else {
1067
+ throw re;
1068
+ }
1069
+ }
1070
+ finally {
1071
+ this.exitRule();
1072
+ }
1073
+ return localctx;
1074
+ }
1075
+ // @RuleVersion(0)
1076
+ number_literal() {
1077
+ let localctx = new Number_literalContext(this, this._ctx, this.state);
1078
+ this.enterRule(localctx, 28, YiniParser.RULE_number_literal);
1079
+ try {
1080
+ this.enterOuterAlt(localctx, 1);
1081
+ {
1082
+ this.state = 274;
1083
+ this.match(YiniParser.NUMBER);
1084
+ }
1085
+ }
1086
+ catch (re) {
1087
+ if (re instanceof antlr4_1.RecognitionException) {
1088
+ localctx.exception = re;
1089
+ this._errHandler.reportError(this, re);
1090
+ this._errHandler.recover(this, re);
1091
+ }
1092
+ else {
1093
+ throw re;
1094
+ }
1095
+ }
1096
+ finally {
1097
+ this.exitRule();
1098
+ }
1099
+ return localctx;
1100
+ }
1101
+ // @RuleVersion(0)
1102
+ null_literal() {
1103
+ let localctx = new Null_literalContext(this, this._ctx, this.state);
1104
+ this.enterRule(localctx, 30, YiniParser.RULE_null_literal);
1105
+ try {
1106
+ this.enterOuterAlt(localctx, 1);
1107
+ {
1108
+ this.state = 276;
1109
+ this.match(YiniParser.NULL);
1110
+ }
1111
+ }
1112
+ catch (re) {
1113
+ if (re instanceof antlr4_1.RecognitionException) {
1114
+ localctx.exception = re;
1115
+ this._errHandler.reportError(this, re);
1116
+ this._errHandler.recover(this, re);
1117
+ }
1118
+ else {
1119
+ throw re;
1120
+ }
1121
+ }
1122
+ finally {
1123
+ this.exitRule();
1124
+ }
1125
+ return localctx;
1126
+ }
1127
+ // @RuleVersion(0)
1128
+ string_literal() {
1129
+ let localctx = new String_literalContext(this, this._ctx, this.state);
1130
+ this.enterRule(localctx, 32, YiniParser.RULE_string_literal);
1131
+ try {
1132
+ let _alt;
1133
+ this.enterOuterAlt(localctx, 1);
1134
+ {
1135
+ this.state = 278;
1136
+ this.match(YiniParser.STRING);
1137
+ this.state = 282;
1138
+ this._errHandler.sync(this);
1139
+ _alt = this._interp.adaptivePredict(this._input, 47, this._ctx);
1140
+ while (_alt !== 2 && _alt !== antlr4_1.ATN.INVALID_ALT_NUMBER) {
1141
+ if (_alt === 1) {
1142
+ {
1143
+ {
1144
+ this.state = 279;
1145
+ this.string_concat();
1146
+ }
1147
+ }
1148
+ }
1149
+ this.state = 284;
1150
+ this._errHandler.sync(this);
1151
+ _alt = this._interp.adaptivePredict(this._input, 47, this._ctx);
1152
+ }
1153
+ }
1154
+ }
1155
+ catch (re) {
1156
+ if (re instanceof antlr4_1.RecognitionException) {
1157
+ localctx.exception = re;
1158
+ this._errHandler.reportError(this, re);
1159
+ this._errHandler.recover(this, re);
1160
+ }
1161
+ else {
1162
+ throw re;
1163
+ }
1164
+ }
1165
+ finally {
1166
+ this.exitRule();
1167
+ }
1168
+ return localctx;
1169
+ }
1170
+ // @RuleVersion(0)
1171
+ string_concat() {
1172
+ let localctx = new String_concatContext(this, this._ctx, this.state);
1173
+ this.enterRule(localctx, 34, YiniParser.RULE_string_concat);
1174
+ let _la;
1175
+ try {
1176
+ this.enterOuterAlt(localctx, 1);
1177
+ {
1178
+ this.state = 288;
1179
+ this._errHandler.sync(this);
1180
+ _la = this._input.LA(1);
1181
+ while (_la === 40) {
1182
+ {
1183
+ {
1184
+ this.state = 285;
1185
+ this.match(YiniParser.NL);
1186
+ }
1187
+ }
1188
+ this.state = 290;
1189
+ this._errHandler.sync(this);
1190
+ _la = this._input.LA(1);
1191
+ }
1192
+ this.state = 291;
1193
+ this.match(YiniParser.PLUS);
1194
+ this.state = 295;
1195
+ this._errHandler.sync(this);
1196
+ _la = this._input.LA(1);
1197
+ while (_la === 40) {
1198
+ {
1199
+ {
1200
+ this.state = 292;
1201
+ this.match(YiniParser.NL);
1202
+ }
1203
+ }
1204
+ this.state = 297;
1205
+ this._errHandler.sync(this);
1206
+ _la = this._input.LA(1);
1207
+ }
1208
+ this.state = 298;
1209
+ this.match(YiniParser.STRING);
1210
+ }
1211
+ }
1212
+ catch (re) {
1213
+ if (re instanceof antlr4_1.RecognitionException) {
1214
+ localctx.exception = re;
1215
+ this._errHandler.reportError(this, re);
1216
+ this._errHandler.recover(this, re);
1217
+ }
1218
+ else {
1219
+ throw re;
1220
+ }
1221
+ }
1222
+ finally {
1223
+ this.exitRule();
1224
+ }
1225
+ return localctx;
1226
+ }
1227
+ // @RuleVersion(0)
1228
+ boolean_literal() {
1229
+ let localctx = new Boolean_literalContext(this, this._ctx, this.state);
1230
+ this.enterRule(localctx, 36, YiniParser.RULE_boolean_literal);
1231
+ let _la;
1232
+ try {
1233
+ this.enterOuterAlt(localctx, 1);
1234
+ {
1235
+ this.state = 300;
1236
+ _la = this._input.LA(1);
1237
+ if (!(_la === 23 || _la === 24)) {
1238
+ this._errHandler.recoverInline(this);
1239
+ }
1240
+ else {
1241
+ this._errHandler.reportMatch(this);
1242
+ this.consume();
1243
+ }
1244
+ }
1245
+ }
1246
+ catch (re) {
1247
+ if (re instanceof antlr4_1.RecognitionException) {
1248
+ localctx.exception = re;
1249
+ this._errHandler.reportError(this, re);
1250
+ this._errHandler.recover(this, re);
1251
+ }
1252
+ else {
1253
+ throw re;
1254
+ }
1255
+ }
1256
+ finally {
1257
+ this.exitRule();
1258
+ }
1259
+ return localctx;
1260
+ }
1261
+ static get _ATN() {
1262
+ if (!YiniParser.__ATN) {
1263
+ YiniParser.__ATN = new antlr4_1.ATNDeserializer().deserialize(YiniParser._serializedATN);
1264
+ }
1265
+ return YiniParser.__ATN;
1266
+ }
1267
+ }
1268
+ YiniParser.YINI_MARKER = 1;
1269
+ YiniParser.SECTION_HEAD = 2;
1270
+ YiniParser.TERMINAL_TOKEN = 3;
1271
+ YiniParser.SS = 4;
1272
+ YiniParser.EUR = 5;
1273
+ YiniParser.CARET = 6;
1274
+ YiniParser.TILDE = 7;
1275
+ YiniParser.GT = 8;
1276
+ YiniParser.LT = 9;
1277
+ YiniParser.EQ = 10;
1278
+ YiniParser.HASH = 11;
1279
+ YiniParser.COMMA = 12;
1280
+ YiniParser.COLON = 13;
1281
+ YiniParser.OB = 14;
1282
+ YiniParser.CB = 15;
1283
+ YiniParser.OC = 16;
1284
+ YiniParser.CC = 17;
1285
+ YiniParser.PLUS = 18;
1286
+ YiniParser.DOLLAR = 19;
1287
+ YiniParser.PC = 20;
1288
+ YiniParser.AT = 21;
1289
+ YiniParser.SEMICOLON = 22;
1290
+ YiniParser.BOOLEAN_FALSE = 23;
1291
+ YiniParser.BOOLEAN_TRUE = 24;
1292
+ YiniParser.NULL = 25;
1293
+ YiniParser.EMPTY_OBJECT = 26;
1294
+ YiniParser.EMPTY_LIST = 27;
1295
+ YiniParser.SHEBANG = 28;
1296
+ YiniParser.NUMBER = 29;
1297
+ YiniParser.KEY = 30;
1298
+ YiniParser.IDENT = 31;
1299
+ YiniParser.IDENT_BACKTICKED = 32;
1300
+ YiniParser.STRING = 33;
1301
+ YiniParser.TRIPLE_QUOTED_STRING = 34;
1302
+ YiniParser.SINGLE_OR_DOUBLE = 35;
1303
+ YiniParser.R_AND_C_STRING = 36;
1304
+ YiniParser.HYPER_STRING = 37;
1305
+ YiniParser.ESC_SEQ = 38;
1306
+ YiniParser.ESC_SEQ_BASE = 39;
1307
+ YiniParser.NL = 40;
1308
+ YiniParser.SINGLE_NL = 41;
1309
+ YiniParser.WS = 42;
1310
+ YiniParser.BLOCK_COMMENT = 43;
1311
+ YiniParser.COMMENT = 44;
1312
+ YiniParser.LINE_COMMENT = 45;
1313
+ YiniParser.INLINE_COMMENT = 46;
1314
+ YiniParser.IDENT_INVALID = 47;
1315
+ YiniParser.EOF = antlr4_1.Token.EOF;
1316
+ YiniParser.RULE_yini = 0;
1317
+ YiniParser.RULE_section = 1;
1318
+ YiniParser.RULE_terminal_line = 2;
1319
+ YiniParser.RULE_section_members = 3;
1320
+ YiniParser.RULE_member = 4;
1321
+ YiniParser.RULE_member_colon_list = 5;
1322
+ YiniParser.RULE_value = 6;
1323
+ YiniParser.RULE_object_literal = 7;
1324
+ YiniParser.RULE_objectMemberList = 8;
1325
+ YiniParser.RULE_objectMember = 9;
1326
+ YiniParser.RULE_list = 10;
1327
+ YiniParser.RULE_list_in_brackets = 11;
1328
+ YiniParser.RULE_elements = 12;
1329
+ YiniParser.RULE_element = 13;
1330
+ YiniParser.RULE_number_literal = 14;
1331
+ YiniParser.RULE_null_literal = 15;
1332
+ YiniParser.RULE_string_literal = 16;
1333
+ YiniParser.RULE_string_concat = 17;
1334
+ YiniParser.RULE_boolean_literal = 18;
1335
+ YiniParser.literalNames = [null, null,
1336
+ null, null,
1337
+ "'\\u00A7'",
1338
+ "'\\u20AC'",
1339
+ "'^'", "'~'",
1340
+ "'>'", "'<'",
1341
+ "'='", "'#'",
1342
+ "','", "':'",
1343
+ "'['", "']'",
1344
+ "'{'", "'}'",
1345
+ "'+'", "'$'",
1346
+ "'%'", "'@'",
1347
+ "';'"];
1348
+ YiniParser.symbolicNames = [null, "YINI_MARKER",
1349
+ "SECTION_HEAD",
1350
+ "TERMINAL_TOKEN",
1351
+ "SS", "EUR",
1352
+ "CARET", "TILDE",
1353
+ "GT", "LT",
1354
+ "EQ", "HASH",
1355
+ "COMMA", "COLON",
1356
+ "OB", "CB",
1357
+ "OC", "CC",
1358
+ "PLUS", "DOLLAR",
1359
+ "PC", "AT",
1360
+ "SEMICOLON",
1361
+ "BOOLEAN_FALSE",
1362
+ "BOOLEAN_TRUE",
1363
+ "NULL", "EMPTY_OBJECT",
1364
+ "EMPTY_LIST",
1365
+ "SHEBANG",
1366
+ "NUMBER", "KEY",
1367
+ "IDENT", "IDENT_BACKTICKED",
1368
+ "STRING", "TRIPLE_QUOTED_STRING",
1369
+ "SINGLE_OR_DOUBLE",
1370
+ "R_AND_C_STRING",
1371
+ "HYPER_STRING",
1372
+ "ESC_SEQ",
1373
+ "ESC_SEQ_BASE",
1374
+ "NL", "SINGLE_NL",
1375
+ "WS", "BLOCK_COMMENT",
1376
+ "COMMENT",
1377
+ "LINE_COMMENT",
1378
+ "INLINE_COMMENT",
1379
+ "IDENT_INVALID"];
1380
+ // tslint:disable:no-trailing-whitespace
1381
+ YiniParser.ruleNames = [
1382
+ "yini", "section", "terminal_line", "section_members", "member", "member_colon_list",
1383
+ "value", "object_literal", "objectMemberList", "objectMember", "list",
1384
+ "list_in_brackets", "elements", "element", "number_literal", "null_literal",
1385
+ "string_literal", "string_concat", "boolean_literal",
1386
+ ];
1387
+ YiniParser._serializedATN = [4, 1, 47, 303, 2, 0, 7, 0, 2,
1388
+ 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2,
1389
+ 10, 7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2, 13, 7, 13, 2, 14, 7, 14, 2, 15, 7, 15, 2, 16, 7, 16, 2, 17,
1390
+ 7, 17, 2, 18, 7, 18, 1, 0, 3, 0, 40, 8, 0, 1, 0, 5, 0, 43, 8, 0, 10, 0, 12, 0, 46, 9, 0, 1, 0, 5, 0, 49,
1391
+ 8, 0, 10, 0, 12, 0, 52, 9, 0, 1, 0, 3, 0, 55, 8, 0, 1, 0, 5, 0, 58, 8, 0, 10, 0, 12, 0, 61, 9, 0, 1, 0,
1392
+ 5, 0, 64, 8, 0, 10, 0, 12, 0, 67, 9, 0, 1, 0, 4, 0, 70, 8, 0, 11, 0, 12, 0, 71, 1, 0, 5, 0, 75, 8, 0,
1393
+ 10, 0, 12, 0, 78, 9, 0, 1, 0, 3, 0, 81, 8, 0, 1, 0, 3, 0, 84, 8, 0, 1, 1, 3, 1, 87, 8, 1, 1, 1, 1, 1, 1,
1394
+ 2, 1, 2, 4, 2, 93, 8, 2, 11, 2, 12, 2, 94, 1, 2, 3, 2, 98, 8, 2, 1, 2, 5, 2, 101, 8, 2, 10, 2, 12, 2,
1395
+ 104, 9, 2, 3, 2, 106, 8, 2, 1, 3, 4, 3, 109, 8, 3, 11, 3, 12, 3, 110, 1, 4, 1, 4, 3, 4, 115, 8, 4, 1,
1396
+ 4, 1, 4, 3, 4, 119, 8, 4, 1, 4, 3, 4, 122, 8, 4, 1, 4, 4, 4, 125, 8, 4, 11, 4, 12, 4, 126, 1, 4, 1, 4,
1397
+ 1, 4, 3, 4, 132, 8, 4, 3, 4, 134, 8, 4, 1, 5, 1, 5, 1, 5, 3, 5, 139, 8, 5, 1, 5, 3, 5, 142, 8, 5, 1, 5,
1398
+ 4, 5, 145, 8, 5, 11, 5, 12, 5, 146, 1, 6, 1, 6, 1, 6, 1, 6, 1, 6, 1, 6, 3, 6, 155, 8, 6, 1, 7, 1, 7, 5,
1399
+ 7, 159, 8, 7, 10, 7, 12, 7, 162, 9, 7, 1, 7, 1, 7, 5, 7, 166, 8, 7, 10, 7, 12, 7, 169, 9, 7, 1, 7, 1,
1400
+ 7, 5, 7, 173, 8, 7, 10, 7, 12, 7, 176, 9, 7, 1, 7, 3, 7, 179, 8, 7, 1, 8, 1, 8, 1, 8, 5, 8, 184, 8, 8,
1401
+ 10, 8, 12, 8, 187, 9, 8, 1, 8, 5, 8, 190, 8, 8, 10, 8, 12, 8, 193, 9, 8, 1, 8, 3, 8, 196, 8, 8, 1, 8,
1402
+ 3, 8, 199, 8, 8, 1, 9, 1, 9, 3, 9, 203, 8, 9, 1, 9, 1, 9, 5, 9, 207, 8, 9, 10, 9, 12, 9, 210, 9, 9, 1,
1403
+ 9, 1, 9, 1, 10, 1, 10, 3, 10, 216, 8, 10, 1, 11, 1, 11, 5, 11, 220, 8, 11, 10, 11, 12, 11, 223, 9,
1404
+ 11, 1, 11, 1, 11, 5, 11, 227, 8, 11, 10, 11, 12, 11, 230, 9, 11, 1, 11, 1, 11, 1, 11, 3, 11, 235,
1405
+ 8, 11, 1, 12, 1, 12, 3, 12, 239, 8, 12, 1, 12, 1, 12, 1, 12, 1, 12, 3, 12, 245, 8, 12, 1, 13, 5, 13,
1406
+ 248, 8, 13, 10, 13, 12, 13, 251, 9, 13, 1, 13, 1, 13, 5, 13, 255, 8, 13, 10, 13, 12, 13, 258, 9,
1407
+ 13, 1, 13, 5, 13, 261, 8, 13, 10, 13, 12, 13, 264, 9, 13, 1, 13, 1, 13, 5, 13, 268, 8, 13, 10, 13,
1408
+ 12, 13, 271, 9, 13, 3, 13, 273, 8, 13, 1, 14, 1, 14, 1, 15, 1, 15, 1, 16, 1, 16, 5, 16, 281, 8, 16,
1409
+ 10, 16, 12, 16, 284, 9, 16, 1, 17, 5, 17, 287, 8, 17, 10, 17, 12, 17, 290, 9, 17, 1, 17, 1, 17,
1410
+ 5, 17, 294, 8, 17, 10, 17, 12, 17, 297, 9, 17, 1, 17, 1, 17, 1, 18, 1, 18, 1, 18, 0, 0, 19, 0, 2,
1411
+ 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 0, 1, 1, 0, 23, 24, 338, 0, 39,
1412
+ 1, 0, 0, 0, 2, 86, 1, 0, 0, 0, 4, 90, 1, 0, 0, 0, 6, 108, 1, 0, 0, 0, 8, 133, 1, 0, 0, 0, 10, 135, 1,
1413
+ 0, 0, 0, 12, 154, 1, 0, 0, 0, 14, 178, 1, 0, 0, 0, 16, 198, 1, 0, 0, 0, 18, 200, 1, 0, 0, 0, 20, 215,
1414
+ 1, 0, 0, 0, 22, 234, 1, 0, 0, 0, 24, 244, 1, 0, 0, 0, 26, 272, 1, 0, 0, 0, 28, 274, 1, 0, 0, 0, 30,
1415
+ 276, 1, 0, 0, 0, 32, 278, 1, 0, 0, 0, 34, 288, 1, 0, 0, 0, 36, 300, 1, 0, 0, 0, 38, 40, 5, 28, 0, 0,
1416
+ 39, 38, 1, 0, 0, 0, 39, 40, 1, 0, 0, 0, 40, 44, 1, 0, 0, 0, 41, 43, 5, 46, 0, 0, 42, 41, 1, 0, 0, 0,
1417
+ 43, 46, 1, 0, 0, 0, 44, 42, 1, 0, 0, 0, 44, 45, 1, 0, 0, 0, 45, 50, 1, 0, 0, 0, 46, 44, 1, 0, 0, 0, 47,
1418
+ 49, 5, 40, 0, 0, 48, 47, 1, 0, 0, 0, 49, 52, 1, 0, 0, 0, 50, 48, 1, 0, 0, 0, 50, 51, 1, 0, 0, 0, 51,
1419
+ 54, 1, 0, 0, 0, 52, 50, 1, 0, 0, 0, 53, 55, 5, 1, 0, 0, 54, 53, 1, 0, 0, 0, 54, 55, 1, 0, 0, 0, 55, 59,
1420
+ 1, 0, 0, 0, 56, 58, 5, 46, 0, 0, 57, 56, 1, 0, 0, 0, 58, 61, 1, 0, 0, 0, 59, 57, 1, 0, 0, 0, 59, 60,
1421
+ 1, 0, 0, 0, 60, 65, 1, 0, 0, 0, 61, 59, 1, 0, 0, 0, 62, 64, 5, 40, 0, 0, 63, 62, 1, 0, 0, 0, 64, 67,
1422
+ 1, 0, 0, 0, 65, 63, 1, 0, 0, 0, 65, 66, 1, 0, 0, 0, 66, 69, 1, 0, 0, 0, 67, 65, 1, 0, 0, 0, 68, 70, 3,
1423
+ 2, 1, 0, 69, 68, 1, 0, 0, 0, 70, 71, 1, 0, 0, 0, 71, 69, 1, 0, 0, 0, 71, 72, 1, 0, 0, 0, 72, 76, 1, 0,
1424
+ 0, 0, 73, 75, 5, 40, 0, 0, 74, 73, 1, 0, 0, 0, 75, 78, 1, 0, 0, 0, 76, 74, 1, 0, 0, 0, 76, 77, 1, 0,
1425
+ 0, 0, 77, 80, 1, 0, 0, 0, 78, 76, 1, 0, 0, 0, 79, 81, 3, 4, 2, 0, 80, 79, 1, 0, 0, 0, 80, 81, 1, 0, 0,
1426
+ 0, 81, 83, 1, 0, 0, 0, 82, 84, 5, 0, 0, 1, 83, 82, 1, 0, 0, 0, 83, 84, 1, 0, 0, 0, 84, 1, 1, 0, 0, 0,
1427
+ 85, 87, 5, 2, 0, 0, 86, 85, 1, 0, 0, 0, 86, 87, 1, 0, 0, 0, 87, 88, 1, 0, 0, 0, 88, 89, 3, 6, 3, 0, 89,
1428
+ 3, 1, 0, 0, 0, 90, 105, 5, 3, 0, 0, 91, 93, 5, 40, 0, 0, 92, 91, 1, 0, 0, 0, 93, 94, 1, 0, 0, 0, 94,
1429
+ 92, 1, 0, 0, 0, 94, 95, 1, 0, 0, 0, 95, 106, 1, 0, 0, 0, 96, 98, 5, 46, 0, 0, 97, 96, 1, 0, 0, 0, 97,
1430
+ 98, 1, 0, 0, 0, 98, 102, 1, 0, 0, 0, 99, 101, 5, 40, 0, 0, 100, 99, 1, 0, 0, 0, 101, 104, 1, 0, 0,
1431
+ 0, 102, 100, 1, 0, 0, 0, 102, 103, 1, 0, 0, 0, 103, 106, 1, 0, 0, 0, 104, 102, 1, 0, 0, 0, 105, 92,
1432
+ 1, 0, 0, 0, 105, 97, 1, 0, 0, 0, 106, 5, 1, 0, 0, 0, 107, 109, 3, 8, 4, 0, 108, 107, 1, 0, 0, 0, 109,
1433
+ 110, 1, 0, 0, 0, 110, 108, 1, 0, 0, 0, 110, 111, 1, 0, 0, 0, 111, 7, 1, 0, 0, 0, 112, 114, 5, 30,
1434
+ 0, 0, 113, 115, 5, 42, 0, 0, 114, 113, 1, 0, 0, 0, 114, 115, 1, 0, 0, 0, 115, 116, 1, 0, 0, 0, 116,
1435
+ 118, 5, 10, 0, 0, 117, 119, 5, 42, 0, 0, 118, 117, 1, 0, 0, 0, 118, 119, 1, 0, 0, 0, 119, 121, 1,
1436
+ 0, 0, 0, 120, 122, 3, 12, 6, 0, 121, 120, 1, 0, 0, 0, 121, 122, 1, 0, 0, 0, 122, 124, 1, 0, 0, 0,
1437
+ 123, 125, 5, 40, 0, 0, 124, 123, 1, 0, 0, 0, 125, 126, 1, 0, 0, 0, 126, 124, 1, 0, 0, 0, 126, 127,
1438
+ 1, 0, 0, 0, 127, 134, 1, 0, 0, 0, 128, 134, 3, 10, 5, 0, 129, 131, 5, 2, 0, 0, 130, 132, 3, 6, 3,
1439
+ 0, 131, 130, 1, 0, 0, 0, 131, 132, 1, 0, 0, 0, 132, 134, 1, 0, 0, 0, 133, 112, 1, 0, 0, 0, 133, 128,
1440
+ 1, 0, 0, 0, 133, 129, 1, 0, 0, 0, 134, 9, 1, 0, 0, 0, 135, 136, 5, 30, 0, 0, 136, 138, 5, 13, 0, 0,
1441
+ 137, 139, 5, 42, 0, 0, 138, 137, 1, 0, 0, 0, 138, 139, 1, 0, 0, 0, 139, 141, 1, 0, 0, 0, 140, 142,
1442
+ 3, 24, 12, 0, 141, 140, 1, 0, 0, 0, 141, 142, 1, 0, 0, 0, 142, 144, 1, 0, 0, 0, 143, 145, 5, 40,
1443
+ 0, 0, 144, 143, 1, 0, 0, 0, 145, 146, 1, 0, 0, 0, 146, 144, 1, 0, 0, 0, 146, 147, 1, 0, 0, 0, 147,
1444
+ 11, 1, 0, 0, 0, 148, 155, 3, 30, 15, 0, 149, 155, 3, 32, 16, 0, 150, 155, 3, 28, 14, 0, 151, 155,
1445
+ 3, 36, 18, 0, 152, 155, 3, 22, 11, 0, 153, 155, 3, 14, 7, 0, 154, 148, 1, 0, 0, 0, 154, 149, 1,
1446
+ 0, 0, 0, 154, 150, 1, 0, 0, 0, 154, 151, 1, 0, 0, 0, 154, 152, 1, 0, 0, 0, 154, 153, 1, 0, 0, 0, 155,
1447
+ 13, 1, 0, 0, 0, 156, 160, 5, 16, 0, 0, 157, 159, 5, 40, 0, 0, 158, 157, 1, 0, 0, 0, 159, 162, 1,
1448
+ 0, 0, 0, 160, 158, 1, 0, 0, 0, 160, 161, 1, 0, 0, 0, 161, 163, 1, 0, 0, 0, 162, 160, 1, 0, 0, 0, 163,
1449
+ 167, 3, 16, 8, 0, 164, 166, 5, 40, 0, 0, 165, 164, 1, 0, 0, 0, 166, 169, 1, 0, 0, 0, 167, 165, 1,
1450
+ 0, 0, 0, 167, 168, 1, 0, 0, 0, 168, 170, 1, 0, 0, 0, 169, 167, 1, 0, 0, 0, 170, 174, 5, 17, 0, 0,
1451
+ 171, 173, 5, 40, 0, 0, 172, 171, 1, 0, 0, 0, 173, 176, 1, 0, 0, 0, 174, 172, 1, 0, 0, 0, 174, 175,
1452
+ 1, 0, 0, 0, 175, 179, 1, 0, 0, 0, 176, 174, 1, 0, 0, 0, 177, 179, 5, 26, 0, 0, 178, 156, 1, 0, 0,
1453
+ 0, 178, 177, 1, 0, 0, 0, 179, 15, 1, 0, 0, 0, 180, 191, 3, 18, 9, 0, 181, 185, 5, 12, 0, 0, 182,
1454
+ 184, 5, 40, 0, 0, 183, 182, 1, 0, 0, 0, 184, 187, 1, 0, 0, 0, 185, 183, 1, 0, 0, 0, 185, 186, 1,
1455
+ 0, 0, 0, 186, 188, 1, 0, 0, 0, 187, 185, 1, 0, 0, 0, 188, 190, 3, 18, 9, 0, 189, 181, 1, 0, 0, 0,
1456
+ 190, 193, 1, 0, 0, 0, 191, 189, 1, 0, 0, 0, 191, 192, 1, 0, 0, 0, 192, 195, 1, 0, 0, 0, 193, 191,
1457
+ 1, 0, 0, 0, 194, 196, 5, 12, 0, 0, 195, 194, 1, 0, 0, 0, 195, 196, 1, 0, 0, 0, 196, 199, 1, 0, 0,
1458
+ 0, 197, 199, 5, 26, 0, 0, 198, 180, 1, 0, 0, 0, 198, 197, 1, 0, 0, 0, 199, 17, 1, 0, 0, 0, 200, 202,
1459
+ 5, 30, 0, 0, 201, 203, 5, 42, 0, 0, 202, 201, 1, 0, 0, 0, 202, 203, 1, 0, 0, 0, 203, 204, 1, 0, 0,
1460
+ 0, 204, 208, 5, 10, 0, 0, 205, 207, 5, 40, 0, 0, 206, 205, 1, 0, 0, 0, 207, 210, 1, 0, 0, 0, 208,
1461
+ 206, 1, 0, 0, 0, 208, 209, 1, 0, 0, 0, 209, 211, 1, 0, 0, 0, 210, 208, 1, 0, 0, 0, 211, 212, 3, 12,
1462
+ 6, 0, 212, 19, 1, 0, 0, 0, 213, 216, 3, 24, 12, 0, 214, 216, 3, 22, 11, 0, 215, 213, 1, 0, 0, 0,
1463
+ 215, 214, 1, 0, 0, 0, 216, 21, 1, 0, 0, 0, 217, 221, 5, 14, 0, 0, 218, 220, 5, 40, 0, 0, 219, 218,
1464
+ 1, 0, 0, 0, 220, 223, 1, 0, 0, 0, 221, 219, 1, 0, 0, 0, 221, 222, 1, 0, 0, 0, 222, 224, 1, 0, 0, 0,
1465
+ 223, 221, 1, 0, 0, 0, 224, 228, 3, 24, 12, 0, 225, 227, 5, 40, 0, 0, 226, 225, 1, 0, 0, 0, 227,
1466
+ 230, 1, 0, 0, 0, 228, 226, 1, 0, 0, 0, 228, 229, 1, 0, 0, 0, 229, 231, 1, 0, 0, 0, 230, 228, 1, 0,
1467
+ 0, 0, 231, 232, 5, 15, 0, 0, 232, 235, 1, 0, 0, 0, 233, 235, 5, 27, 0, 0, 234, 217, 1, 0, 0, 0, 234,
1468
+ 233, 1, 0, 0, 0, 235, 23, 1, 0, 0, 0, 236, 238, 3, 26, 13, 0, 237, 239, 5, 12, 0, 0, 238, 237, 1,
1469
+ 0, 0, 0, 238, 239, 1, 0, 0, 0, 239, 245, 1, 0, 0, 0, 240, 241, 3, 26, 13, 0, 241, 242, 5, 12, 0,
1470
+ 0, 242, 243, 3, 24, 12, 0, 243, 245, 1, 0, 0, 0, 244, 236, 1, 0, 0, 0, 244, 240, 1, 0, 0, 0, 245,
1471
+ 25, 1, 0, 0, 0, 246, 248, 5, 40, 0, 0, 247, 246, 1, 0, 0, 0, 248, 251, 1, 0, 0, 0, 249, 247, 1, 0,
1472
+ 0, 0, 249, 250, 1, 0, 0, 0, 250, 252, 1, 0, 0, 0, 251, 249, 1, 0, 0, 0, 252, 256, 3, 12, 6, 0, 253,
1473
+ 255, 5, 40, 0, 0, 254, 253, 1, 0, 0, 0, 255, 258, 1, 0, 0, 0, 256, 254, 1, 0, 0, 0, 256, 257, 1,
1474
+ 0, 0, 0, 257, 273, 1, 0, 0, 0, 258, 256, 1, 0, 0, 0, 259, 261, 5, 40, 0, 0, 260, 259, 1, 0, 0, 0,
1475
+ 261, 264, 1, 0, 0, 0, 262, 260, 1, 0, 0, 0, 262, 263, 1, 0, 0, 0, 263, 265, 1, 0, 0, 0, 264, 262,
1476
+ 1, 0, 0, 0, 265, 269, 3, 22, 11, 0, 266, 268, 5, 40, 0, 0, 267, 266, 1, 0, 0, 0, 268, 271, 1, 0,
1477
+ 0, 0, 269, 267, 1, 0, 0, 0, 269, 270, 1, 0, 0, 0, 270, 273, 1, 0, 0, 0, 271, 269, 1, 0, 0, 0, 272,
1478
+ 249, 1, 0, 0, 0, 272, 262, 1, 0, 0, 0, 273, 27, 1, 0, 0, 0, 274, 275, 5, 29, 0, 0, 275, 29, 1, 0,
1479
+ 0, 0, 276, 277, 5, 25, 0, 0, 277, 31, 1, 0, 0, 0, 278, 282, 5, 33, 0, 0, 279, 281, 3, 34, 17, 0,
1480
+ 280, 279, 1, 0, 0, 0, 281, 284, 1, 0, 0, 0, 282, 280, 1, 0, 0, 0, 282, 283, 1, 0, 0, 0, 283, 33,
1481
+ 1, 0, 0, 0, 284, 282, 1, 0, 0, 0, 285, 287, 5, 40, 0, 0, 286, 285, 1, 0, 0, 0, 287, 290, 1, 0, 0,
1482
+ 0, 288, 286, 1, 0, 0, 0, 288, 289, 1, 0, 0, 0, 289, 291, 1, 0, 0, 0, 290, 288, 1, 0, 0, 0, 291, 295,
1483
+ 5, 18, 0, 0, 292, 294, 5, 40, 0, 0, 293, 292, 1, 0, 0, 0, 294, 297, 1, 0, 0, 0, 295, 293, 1, 0, 0,
1484
+ 0, 295, 296, 1, 0, 0, 0, 296, 298, 1, 0, 0, 0, 297, 295, 1, 0, 0, 0, 298, 299, 5, 33, 0, 0, 299,
1485
+ 35, 1, 0, 0, 0, 300, 301, 7, 0, 0, 0, 301, 37, 1, 0, 0, 0, 50, 39, 44, 50, 54, 59, 65, 71, 76, 80,
1486
+ 83, 86, 94, 97, 102, 105, 110, 114, 118, 121, 126, 131, 133, 138, 141, 146, 154, 160, 167,
1487
+ 174, 178, 185, 191, 195, 198, 202, 208, 215, 221, 228, 234, 238, 244, 249, 256, 262, 269,
1488
+ 272, 282, 288, 295];
1489
+ YiniParser.DecisionsToDFA = YiniParser._ATN.decisionToState.map((ds, index) => new antlr4_1.DFA(ds, index));
1490
+ exports.default = YiniParser;
1491
+ class YiniContext extends antlr4_1.ParserRuleContext {
1492
+ constructor(parser, parent, invokingState) {
1493
+ super(parent, invokingState);
1494
+ this.parser = parser;
1495
+ }
1496
+ SHEBANG() {
1497
+ return this.getToken(YiniParser.SHEBANG, 0);
1498
+ }
1499
+ INLINE_COMMENT_list() {
1500
+ return this.getTokens(YiniParser.INLINE_COMMENT);
1501
+ }
1502
+ INLINE_COMMENT(i) {
1503
+ return this.getToken(YiniParser.INLINE_COMMENT, i);
1504
+ }
1505
+ NL_list() {
1506
+ return this.getTokens(YiniParser.NL);
1507
+ }
1508
+ NL(i) {
1509
+ return this.getToken(YiniParser.NL, i);
1510
+ }
1511
+ YINI_MARKER() {
1512
+ return this.getToken(YiniParser.YINI_MARKER, 0);
1513
+ }
1514
+ section_list() {
1515
+ return this.getTypedRuleContexts(SectionContext);
1516
+ }
1517
+ section(i) {
1518
+ return this.getTypedRuleContext(SectionContext, i);
1519
+ }
1520
+ terminal_line() {
1521
+ return this.getTypedRuleContext(Terminal_lineContext, 0);
1522
+ }
1523
+ EOF() {
1524
+ return this.getToken(YiniParser.EOF, 0);
1525
+ }
1526
+ get ruleIndex() {
1527
+ return YiniParser.RULE_yini;
1528
+ }
1529
+ // @Override
1530
+ accept(visitor) {
1531
+ if (visitor.visitYini) {
1532
+ return visitor.visitYini(this);
1533
+ }
1534
+ else {
1535
+ return visitor.visitChildren(this);
1536
+ }
1537
+ }
1538
+ }
1539
+ exports.YiniContext = YiniContext;
1540
+ class SectionContext extends antlr4_1.ParserRuleContext {
1541
+ constructor(parser, parent, invokingState) {
1542
+ super(parent, invokingState);
1543
+ this.parser = parser;
1544
+ }
1545
+ section_members() {
1546
+ return this.getTypedRuleContext(Section_membersContext, 0);
1547
+ }
1548
+ SECTION_HEAD() {
1549
+ return this.getToken(YiniParser.SECTION_HEAD, 0);
1550
+ }
1551
+ get ruleIndex() {
1552
+ return YiniParser.RULE_section;
1553
+ }
1554
+ // @Override
1555
+ accept(visitor) {
1556
+ if (visitor.visitSection) {
1557
+ return visitor.visitSection(this);
1558
+ }
1559
+ else {
1560
+ return visitor.visitChildren(this);
1561
+ }
1562
+ }
1563
+ }
1564
+ exports.SectionContext = SectionContext;
1565
+ class Terminal_lineContext extends antlr4_1.ParserRuleContext {
1566
+ constructor(parser, parent, invokingState) {
1567
+ super(parent, invokingState);
1568
+ this.parser = parser;
1569
+ }
1570
+ TERMINAL_TOKEN() {
1571
+ return this.getToken(YiniParser.TERMINAL_TOKEN, 0);
1572
+ }
1573
+ NL_list() {
1574
+ return this.getTokens(YiniParser.NL);
1575
+ }
1576
+ NL(i) {
1577
+ return this.getToken(YiniParser.NL, i);
1578
+ }
1579
+ INLINE_COMMENT() {
1580
+ return this.getToken(YiniParser.INLINE_COMMENT, 0);
1581
+ }
1582
+ get ruleIndex() {
1583
+ return YiniParser.RULE_terminal_line;
1584
+ }
1585
+ // @Override
1586
+ accept(visitor) {
1587
+ if (visitor.visitTerminal_line) {
1588
+ return visitor.visitTerminal_line(this);
1589
+ }
1590
+ else {
1591
+ return visitor.visitChildren(this);
1592
+ }
1593
+ }
1594
+ }
1595
+ exports.Terminal_lineContext = Terminal_lineContext;
1596
+ class Section_membersContext extends antlr4_1.ParserRuleContext {
1597
+ constructor(parser, parent, invokingState) {
1598
+ super(parent, invokingState);
1599
+ this.parser = parser;
1600
+ }
1601
+ member_list() {
1602
+ return this.getTypedRuleContexts(MemberContext);
1603
+ }
1604
+ member(i) {
1605
+ return this.getTypedRuleContext(MemberContext, i);
1606
+ }
1607
+ get ruleIndex() {
1608
+ return YiniParser.RULE_section_members;
1609
+ }
1610
+ // @Override
1611
+ accept(visitor) {
1612
+ if (visitor.visitSection_members) {
1613
+ return visitor.visitSection_members(this);
1614
+ }
1615
+ else {
1616
+ return visitor.visitChildren(this);
1617
+ }
1618
+ }
1619
+ }
1620
+ exports.Section_membersContext = Section_membersContext;
1621
+ class MemberContext extends antlr4_1.ParserRuleContext {
1622
+ constructor(parser, parent, invokingState) {
1623
+ super(parent, invokingState);
1624
+ this.parser = parser;
1625
+ }
1626
+ KEY() {
1627
+ return this.getToken(YiniParser.KEY, 0);
1628
+ }
1629
+ EQ() {
1630
+ return this.getToken(YiniParser.EQ, 0);
1631
+ }
1632
+ WS_list() {
1633
+ return this.getTokens(YiniParser.WS);
1634
+ }
1635
+ WS(i) {
1636
+ return this.getToken(YiniParser.WS, i);
1637
+ }
1638
+ value() {
1639
+ return this.getTypedRuleContext(ValueContext, 0);
1640
+ }
1641
+ NL_list() {
1642
+ return this.getTokens(YiniParser.NL);
1643
+ }
1644
+ NL(i) {
1645
+ return this.getToken(YiniParser.NL, i);
1646
+ }
1647
+ member_colon_list() {
1648
+ return this.getTypedRuleContext(Member_colon_listContext, 0);
1649
+ }
1650
+ SECTION_HEAD() {
1651
+ return this.getToken(YiniParser.SECTION_HEAD, 0);
1652
+ }
1653
+ section_members() {
1654
+ return this.getTypedRuleContext(Section_membersContext, 0);
1655
+ }
1656
+ get ruleIndex() {
1657
+ return YiniParser.RULE_member;
1658
+ }
1659
+ // @Override
1660
+ accept(visitor) {
1661
+ if (visitor.visitMember) {
1662
+ return visitor.visitMember(this);
1663
+ }
1664
+ else {
1665
+ return visitor.visitChildren(this);
1666
+ }
1667
+ }
1668
+ }
1669
+ exports.MemberContext = MemberContext;
1670
+ class Member_colon_listContext extends antlr4_1.ParserRuleContext {
1671
+ constructor(parser, parent, invokingState) {
1672
+ super(parent, invokingState);
1673
+ this.parser = parser;
1674
+ }
1675
+ KEY() {
1676
+ return this.getToken(YiniParser.KEY, 0);
1677
+ }
1678
+ COLON() {
1679
+ return this.getToken(YiniParser.COLON, 0);
1680
+ }
1681
+ WS() {
1682
+ return this.getToken(YiniParser.WS, 0);
1683
+ }
1684
+ elements() {
1685
+ return this.getTypedRuleContext(ElementsContext, 0);
1686
+ }
1687
+ NL_list() {
1688
+ return this.getTokens(YiniParser.NL);
1689
+ }
1690
+ NL(i) {
1691
+ return this.getToken(YiniParser.NL, i);
1692
+ }
1693
+ get ruleIndex() {
1694
+ return YiniParser.RULE_member_colon_list;
1695
+ }
1696
+ // @Override
1697
+ accept(visitor) {
1698
+ if (visitor.visitMember_colon_list) {
1699
+ return visitor.visitMember_colon_list(this);
1700
+ }
1701
+ else {
1702
+ return visitor.visitChildren(this);
1703
+ }
1704
+ }
1705
+ }
1706
+ exports.Member_colon_listContext = Member_colon_listContext;
1707
+ class ValueContext extends antlr4_1.ParserRuleContext {
1708
+ constructor(parser, parent, invokingState) {
1709
+ super(parent, invokingState);
1710
+ this.parser = parser;
1711
+ }
1712
+ null_literal() {
1713
+ return this.getTypedRuleContext(Null_literalContext, 0);
1714
+ }
1715
+ string_literal() {
1716
+ return this.getTypedRuleContext(String_literalContext, 0);
1717
+ }
1718
+ number_literal() {
1719
+ return this.getTypedRuleContext(Number_literalContext, 0);
1720
+ }
1721
+ boolean_literal() {
1722
+ return this.getTypedRuleContext(Boolean_literalContext, 0);
1723
+ }
1724
+ list_in_brackets() {
1725
+ return this.getTypedRuleContext(List_in_bracketsContext, 0);
1726
+ }
1727
+ object_literal() {
1728
+ return this.getTypedRuleContext(Object_literalContext, 0);
1729
+ }
1730
+ get ruleIndex() {
1731
+ return YiniParser.RULE_value;
1732
+ }
1733
+ // @Override
1734
+ accept(visitor) {
1735
+ if (visitor.visitValue) {
1736
+ return visitor.visitValue(this);
1737
+ }
1738
+ else {
1739
+ return visitor.visitChildren(this);
1740
+ }
1741
+ }
1742
+ }
1743
+ exports.ValueContext = ValueContext;
1744
+ class Object_literalContext extends antlr4_1.ParserRuleContext {
1745
+ constructor(parser, parent, invokingState) {
1746
+ super(parent, invokingState);
1747
+ this.parser = parser;
1748
+ }
1749
+ OC() {
1750
+ return this.getToken(YiniParser.OC, 0);
1751
+ }
1752
+ objectMemberList() {
1753
+ return this.getTypedRuleContext(ObjectMemberListContext, 0);
1754
+ }
1755
+ CC() {
1756
+ return this.getToken(YiniParser.CC, 0);
1757
+ }
1758
+ NL_list() {
1759
+ return this.getTokens(YiniParser.NL);
1760
+ }
1761
+ NL(i) {
1762
+ return this.getToken(YiniParser.NL, i);
1763
+ }
1764
+ EMPTY_OBJECT() {
1765
+ return this.getToken(YiniParser.EMPTY_OBJECT, 0);
1766
+ }
1767
+ get ruleIndex() {
1768
+ return YiniParser.RULE_object_literal;
1769
+ }
1770
+ // @Override
1771
+ accept(visitor) {
1772
+ if (visitor.visitObject_literal) {
1773
+ return visitor.visitObject_literal(this);
1774
+ }
1775
+ else {
1776
+ return visitor.visitChildren(this);
1777
+ }
1778
+ }
1779
+ }
1780
+ exports.Object_literalContext = Object_literalContext;
1781
+ class ObjectMemberListContext extends antlr4_1.ParserRuleContext {
1782
+ constructor(parser, parent, invokingState) {
1783
+ super(parent, invokingState);
1784
+ this.parser = parser;
1785
+ }
1786
+ objectMember_list() {
1787
+ return this.getTypedRuleContexts(ObjectMemberContext);
1788
+ }
1789
+ objectMember(i) {
1790
+ return this.getTypedRuleContext(ObjectMemberContext, i);
1791
+ }
1792
+ COMMA_list() {
1793
+ return this.getTokens(YiniParser.COMMA);
1794
+ }
1795
+ COMMA(i) {
1796
+ return this.getToken(YiniParser.COMMA, i);
1797
+ }
1798
+ NL_list() {
1799
+ return this.getTokens(YiniParser.NL);
1800
+ }
1801
+ NL(i) {
1802
+ return this.getToken(YiniParser.NL, i);
1803
+ }
1804
+ EMPTY_OBJECT() {
1805
+ return this.getToken(YiniParser.EMPTY_OBJECT, 0);
1806
+ }
1807
+ get ruleIndex() {
1808
+ return YiniParser.RULE_objectMemberList;
1809
+ }
1810
+ // @Override
1811
+ accept(visitor) {
1812
+ if (visitor.visitObjectMemberList) {
1813
+ return visitor.visitObjectMemberList(this);
1814
+ }
1815
+ else {
1816
+ return visitor.visitChildren(this);
1817
+ }
1818
+ }
1819
+ }
1820
+ exports.ObjectMemberListContext = ObjectMemberListContext;
1821
+ class ObjectMemberContext extends antlr4_1.ParserRuleContext {
1822
+ constructor(parser, parent, invokingState) {
1823
+ super(parent, invokingState);
1824
+ this.parser = parser;
1825
+ }
1826
+ KEY() {
1827
+ return this.getToken(YiniParser.KEY, 0);
1828
+ }
1829
+ EQ() {
1830
+ return this.getToken(YiniParser.EQ, 0);
1831
+ }
1832
+ value() {
1833
+ return this.getTypedRuleContext(ValueContext, 0);
1834
+ }
1835
+ WS() {
1836
+ return this.getToken(YiniParser.WS, 0);
1837
+ }
1838
+ NL_list() {
1839
+ return this.getTokens(YiniParser.NL);
1840
+ }
1841
+ NL(i) {
1842
+ return this.getToken(YiniParser.NL, i);
1843
+ }
1844
+ get ruleIndex() {
1845
+ return YiniParser.RULE_objectMember;
1846
+ }
1847
+ // @Override
1848
+ accept(visitor) {
1849
+ if (visitor.visitObjectMember) {
1850
+ return visitor.visitObjectMember(this);
1851
+ }
1852
+ else {
1853
+ return visitor.visitChildren(this);
1854
+ }
1855
+ }
1856
+ }
1857
+ exports.ObjectMemberContext = ObjectMemberContext;
1858
+ class ListContext extends antlr4_1.ParserRuleContext {
1859
+ constructor(parser, parent, invokingState) {
1860
+ super(parent, invokingState);
1861
+ this.parser = parser;
1862
+ }
1863
+ elements() {
1864
+ return this.getTypedRuleContext(ElementsContext, 0);
1865
+ }
1866
+ list_in_brackets() {
1867
+ return this.getTypedRuleContext(List_in_bracketsContext, 0);
1868
+ }
1869
+ get ruleIndex() {
1870
+ return YiniParser.RULE_list;
1871
+ }
1872
+ // @Override
1873
+ accept(visitor) {
1874
+ if (visitor.visitList) {
1875
+ return visitor.visitList(this);
1876
+ }
1877
+ else {
1878
+ return visitor.visitChildren(this);
1879
+ }
1880
+ }
1881
+ }
1882
+ exports.ListContext = ListContext;
1883
+ class List_in_bracketsContext extends antlr4_1.ParserRuleContext {
1884
+ constructor(parser, parent, invokingState) {
1885
+ super(parent, invokingState);
1886
+ this.parser = parser;
1887
+ }
1888
+ OB() {
1889
+ return this.getToken(YiniParser.OB, 0);
1890
+ }
1891
+ elements() {
1892
+ return this.getTypedRuleContext(ElementsContext, 0);
1893
+ }
1894
+ CB() {
1895
+ return this.getToken(YiniParser.CB, 0);
1896
+ }
1897
+ NL_list() {
1898
+ return this.getTokens(YiniParser.NL);
1899
+ }
1900
+ NL(i) {
1901
+ return this.getToken(YiniParser.NL, i);
1902
+ }
1903
+ EMPTY_LIST() {
1904
+ return this.getToken(YiniParser.EMPTY_LIST, 0);
1905
+ }
1906
+ get ruleIndex() {
1907
+ return YiniParser.RULE_list_in_brackets;
1908
+ }
1909
+ // @Override
1910
+ accept(visitor) {
1911
+ if (visitor.visitList_in_brackets) {
1912
+ return visitor.visitList_in_brackets(this);
1913
+ }
1914
+ else {
1915
+ return visitor.visitChildren(this);
1916
+ }
1917
+ }
1918
+ }
1919
+ exports.List_in_bracketsContext = List_in_bracketsContext;
1920
+ class ElementsContext extends antlr4_1.ParserRuleContext {
1921
+ constructor(parser, parent, invokingState) {
1922
+ super(parent, invokingState);
1923
+ this.parser = parser;
1924
+ }
1925
+ element() {
1926
+ return this.getTypedRuleContext(ElementContext, 0);
1927
+ }
1928
+ COMMA() {
1929
+ return this.getToken(YiniParser.COMMA, 0);
1930
+ }
1931
+ elements() {
1932
+ return this.getTypedRuleContext(ElementsContext, 0);
1933
+ }
1934
+ get ruleIndex() {
1935
+ return YiniParser.RULE_elements;
1936
+ }
1937
+ // @Override
1938
+ accept(visitor) {
1939
+ if (visitor.visitElements) {
1940
+ return visitor.visitElements(this);
1941
+ }
1942
+ else {
1943
+ return visitor.visitChildren(this);
1944
+ }
1945
+ }
1946
+ }
1947
+ exports.ElementsContext = ElementsContext;
1948
+ class ElementContext extends antlr4_1.ParserRuleContext {
1949
+ constructor(parser, parent, invokingState) {
1950
+ super(parent, invokingState);
1951
+ this.parser = parser;
1952
+ }
1953
+ value() {
1954
+ return this.getTypedRuleContext(ValueContext, 0);
1955
+ }
1956
+ NL_list() {
1957
+ return this.getTokens(YiniParser.NL);
1958
+ }
1959
+ NL(i) {
1960
+ return this.getToken(YiniParser.NL, i);
1961
+ }
1962
+ list_in_brackets() {
1963
+ return this.getTypedRuleContext(List_in_bracketsContext, 0);
1964
+ }
1965
+ get ruleIndex() {
1966
+ return YiniParser.RULE_element;
1967
+ }
1968
+ // @Override
1969
+ accept(visitor) {
1970
+ if (visitor.visitElement) {
1971
+ return visitor.visitElement(this);
1972
+ }
1973
+ else {
1974
+ return visitor.visitChildren(this);
1975
+ }
1976
+ }
1977
+ }
1978
+ exports.ElementContext = ElementContext;
1979
+ class Number_literalContext extends antlr4_1.ParserRuleContext {
1980
+ constructor(parser, parent, invokingState) {
1981
+ super(parent, invokingState);
1982
+ this.parser = parser;
1983
+ }
1984
+ NUMBER() {
1985
+ return this.getToken(YiniParser.NUMBER, 0);
1986
+ }
1987
+ get ruleIndex() {
1988
+ return YiniParser.RULE_number_literal;
1989
+ }
1990
+ // @Override
1991
+ accept(visitor) {
1992
+ if (visitor.visitNumber_literal) {
1993
+ return visitor.visitNumber_literal(this);
1994
+ }
1995
+ else {
1996
+ return visitor.visitChildren(this);
1997
+ }
1998
+ }
1999
+ }
2000
+ exports.Number_literalContext = Number_literalContext;
2001
+ class Null_literalContext extends antlr4_1.ParserRuleContext {
2002
+ constructor(parser, parent, invokingState) {
2003
+ super(parent, invokingState);
2004
+ this.parser = parser;
2005
+ }
2006
+ NULL() {
2007
+ return this.getToken(YiniParser.NULL, 0);
2008
+ }
2009
+ get ruleIndex() {
2010
+ return YiniParser.RULE_null_literal;
2011
+ }
2012
+ // @Override
2013
+ accept(visitor) {
2014
+ if (visitor.visitNull_literal) {
2015
+ return visitor.visitNull_literal(this);
2016
+ }
2017
+ else {
2018
+ return visitor.visitChildren(this);
2019
+ }
2020
+ }
2021
+ }
2022
+ exports.Null_literalContext = Null_literalContext;
2023
+ class String_literalContext extends antlr4_1.ParserRuleContext {
2024
+ constructor(parser, parent, invokingState) {
2025
+ super(parent, invokingState);
2026
+ this.parser = parser;
2027
+ }
2028
+ STRING() {
2029
+ return this.getToken(YiniParser.STRING, 0);
2030
+ }
2031
+ string_concat_list() {
2032
+ return this.getTypedRuleContexts(String_concatContext);
2033
+ }
2034
+ string_concat(i) {
2035
+ return this.getTypedRuleContext(String_concatContext, i);
2036
+ }
2037
+ get ruleIndex() {
2038
+ return YiniParser.RULE_string_literal;
2039
+ }
2040
+ // @Override
2041
+ accept(visitor) {
2042
+ if (visitor.visitString_literal) {
2043
+ return visitor.visitString_literal(this);
2044
+ }
2045
+ else {
2046
+ return visitor.visitChildren(this);
2047
+ }
2048
+ }
2049
+ }
2050
+ exports.String_literalContext = String_literalContext;
2051
+ class String_concatContext extends antlr4_1.ParserRuleContext {
2052
+ constructor(parser, parent, invokingState) {
2053
+ super(parent, invokingState);
2054
+ this.parser = parser;
2055
+ }
2056
+ PLUS() {
2057
+ return this.getToken(YiniParser.PLUS, 0);
2058
+ }
2059
+ STRING() {
2060
+ return this.getToken(YiniParser.STRING, 0);
2061
+ }
2062
+ NL_list() {
2063
+ return this.getTokens(YiniParser.NL);
2064
+ }
2065
+ NL(i) {
2066
+ return this.getToken(YiniParser.NL, i);
2067
+ }
2068
+ get ruleIndex() {
2069
+ return YiniParser.RULE_string_concat;
2070
+ }
2071
+ // @Override
2072
+ accept(visitor) {
2073
+ if (visitor.visitString_concat) {
2074
+ return visitor.visitString_concat(this);
2075
+ }
2076
+ else {
2077
+ return visitor.visitChildren(this);
2078
+ }
2079
+ }
2080
+ }
2081
+ exports.String_concatContext = String_concatContext;
2082
+ class Boolean_literalContext extends antlr4_1.ParserRuleContext {
2083
+ constructor(parser, parent, invokingState) {
2084
+ super(parent, invokingState);
2085
+ this.parser = parser;
2086
+ }
2087
+ BOOLEAN_FALSE() {
2088
+ return this.getToken(YiniParser.BOOLEAN_FALSE, 0);
2089
+ }
2090
+ BOOLEAN_TRUE() {
2091
+ return this.getToken(YiniParser.BOOLEAN_TRUE, 0);
2092
+ }
2093
+ get ruleIndex() {
2094
+ return YiniParser.RULE_boolean_literal;
2095
+ }
2096
+ // @Override
2097
+ accept(visitor) {
2098
+ if (visitor.visitBoolean_literal) {
2099
+ return visitor.visitBoolean_literal(this);
2100
+ }
2101
+ else {
2102
+ return visitor.visitChildren(this);
2103
+ }
2104
+ }
2105
+ }
2106
+ exports.Boolean_literalContext = Boolean_literalContext;