expressir 1.2.3 → 1.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/rake.yml +30 -17
  3. data/.gitignore +1 -0
  4. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/CMakeLists.txt +30 -5
  5. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2019.vcxproj +8 -0
  6. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/project.pbxproj +31 -15
  7. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4.xcscheme +1 -1
  8. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4_ios.xcscheme +1 -5
  9. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4_static.xcscheme +1 -5
  10. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRFileStream.cpp +1 -6
  11. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRFileStream.h +9 -6
  12. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRInputStream.cpp +26 -12
  13. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRInputStream.h +10 -3
  14. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonTokenFactory.cpp +1 -1
  15. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonTokenFactory.h +1 -1
  16. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/IntStream.h +7 -1
  17. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Lexer.cpp +2 -2
  18. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Lexer.h +23 -10
  19. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ListTokenSource.cpp +2 -2
  20. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ListTokenSource.h +2 -2
  21. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Parser.cpp +4 -4
  22. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Parser.h +1 -1
  23. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserRuleContext.cpp +3 -3
  24. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserRuleContext.h +1 -1
  25. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ProxyErrorListener.cpp +4 -4
  26. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Recognizer.h +8 -2
  27. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RuntimeMetaData.cpp +1 -1
  28. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Token.h +39 -7
  29. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenSource.h +1 -1
  30. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenStreamRewriter.cpp +5 -5
  31. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenStreamRewriter.h +9 -2
  32. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Vocabulary.cpp +11 -19
  33. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Vocabulary.h +2 -3
  34. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/antlr4-common.h +4 -1
  35. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATN.cpp +2 -2
  36. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATN.h +7 -1
  37. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfig.cpp +0 -2
  38. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfig.h +8 -2
  39. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializer.cpp +0 -2
  40. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializer.h +7 -1
  41. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNSerializer.cpp +1 -1
  42. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNState.cpp +1 -1
  43. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNState.h +9 -2
  44. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LL1Analyzer.cpp +8 -10
  45. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LL1Analyzer.h +7 -1
  46. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerATNSimulator.h +9 -2
  47. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ParserATNSimulator.cpp +6 -2
  48. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContext.h +14 -2
  49. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFA.cpp +2 -2
  50. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFASerializer.cpp +1 -1
  51. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFAState.cpp +1 -1
  52. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/IntervalSet.cpp +9 -9
  53. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/MurmurHash.h +7 -1
  54. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Any.h +1 -1
  55. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Arrays.cpp +2 -2
  56. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/CPPUtils.cpp +1 -1
  57. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/StringUtils.cpp +11 -1
  58. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/StringUtils.h +40 -18
  59. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTree.h +1 -1
  60. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeWalker.h +29 -5
  61. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/Trees.cpp +1 -1
  62. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreePattern.cpp +1 -1
  63. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPath.cpp +1 -1
  64. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathRuleElement.cpp +1 -1
  65. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathTokenElement.cpp +1 -1
  66. data/ext/express-parser/express_parser.cpp +20 -164
  67. data/ext/express-parser/extconf.rb +3 -4
  68. data/lib/expressir/express/parser.rb +17 -14
  69. data/lib/expressir/express/visitor.rb +3 -1
  70. data/lib/expressir/version.rb +1 -1
  71. metadata +2 -2
@@ -237,7 +237,7 @@ namespace Rice::detail {
237
237
  class To_Ruby<Token*> {
238
238
  public:
239
239
  VALUE convert(Token* const &x) {
240
- if (!x) return Nil;
240
+ if (!x) return Qnil;
241
241
  return Data_Object<Token>(x, false, rb_cToken);
242
242
  }
243
243
  };
@@ -246,7 +246,7 @@ namespace Rice::detail {
246
246
  class To_Ruby<tree::ParseTree*> {
247
247
  public:
248
248
  VALUE convert(tree::ParseTree* const &x) {
249
- if (!x) return Nil;
249
+ if (!x) return Qnil;
250
250
  return Data_Object<tree::ParseTree>(x, false, rb_cParseTree);
251
251
  }
252
252
  };
@@ -255,7 +255,7 @@ namespace Rice::detail {
255
255
  class To_Ruby<tree::TerminalNode*> {
256
256
  public:
257
257
  VALUE convert(tree::TerminalNode* const &x) {
258
- if (!x) return Nil;
258
+ if (!x) return Qnil;
259
259
  return Data_Object<tree::TerminalNode>(x, false, rb_cTerminalNode);
260
260
  }
261
261
  };
@@ -277,48 +277,37 @@ public:
277
277
 
278
278
  Object getStart() {
279
279
  auto token = ((ParserRuleContext*) orig) -> getStart();
280
-
281
280
  return detail::To_Ruby<Token*>().convert(token);
282
281
  }
283
282
 
284
283
  Object getStop() {
285
284
  auto token = ((ParserRuleContext*) orig) -> getStop();
286
-
287
285
  return detail::To_Ruby<Token*>().convert(token);
288
286
  }
289
287
 
290
288
  Array getChildren() {
291
- if (children == nullptr) {
292
- children = new Array();
293
-
294
- if (orig != nullptr) {
295
- for (auto it = orig -> children.begin(); it != orig -> children.end(); it ++) {
296
- Object parseTree = ContextProxy::wrapParseTree(*it);
297
-
298
- if (parseTree != Nil) {
299
- children -> push(parseTree);
300
- }
289
+ // Note re memory management
290
+ // It looks like it is critical to 'fill' children array each time when this method is called
291
+ // When Ruby GC collects the array it also unmarks all its elements so it is not possible to reuse them
292
+ // (without custom mark function ????)
293
+ // This comment also applies to all methods returning Ruby Arrays below
294
+ Array children;
295
+ if (orig != nullptr) {
296
+ for (auto it = orig -> children.begin(); it != orig -> children.end(); it ++) {
297
+ Object parseTree = ContextProxy::wrapParseTree(*it);
298
+ if (parseTree != Nil) {
299
+ children.push(parseTree);
301
300
  }
302
301
  }
303
302
  }
304
-
305
- return *children;
303
+ return children;
306
304
  }
307
305
 
308
306
  Object getParent() {
309
- if (parent == Nil) {
310
- if (orig != nullptr) {
311
- parent = ContextProxy::wrapParseTree(orig -> parent);
312
- }
313
- }
314
-
315
- return parent;
307
+ return orig == nullptr ? Nil: wrapParseTree(orig -> parent) ;
316
308
  }
317
309
 
318
310
  size_t childCount() {
319
- if (orig == nullptr) {
320
- return 0;
321
- }
322
311
 
323
312
  return getChildren().size();
324
313
  }
@@ -337,8 +326,6 @@ private:
337
326
 
338
327
  protected:
339
328
  tree::ParseTree* orig = nullptr;
340
- Array* children = nullptr;
341
- Object parent = Nil;
342
329
  };
343
330
 
344
331
  class TerminalNodeProxy : public ContextProxy {
@@ -351,13 +338,11 @@ class AttributeRefContextProxy : public ContextProxy {
351
338
  public:
352
339
  AttributeRefContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
353
340
  Object attributeId();
354
-
355
341
  };
356
342
 
357
343
  class AttributeIdContextProxy : public ContextProxy {
358
344
  public:
359
345
  AttributeIdContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
360
-
361
346
  Object SimpleId();
362
347
  };
363
348
 
@@ -365,13 +350,11 @@ class ConstantRefContextProxy : public ContextProxy {
365
350
  public:
366
351
  ConstantRefContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
367
352
  Object constantId();
368
-
369
353
  };
370
354
 
371
355
  class ConstantIdContextProxy : public ContextProxy {
372
356
  public:
373
357
  ConstantIdContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
374
-
375
358
  Object SimpleId();
376
359
  };
377
360
 
@@ -379,13 +362,11 @@ class EntityRefContextProxy : public ContextProxy {
379
362
  public:
380
363
  EntityRefContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
381
364
  Object entityId();
382
-
383
365
  };
384
366
 
385
367
  class EntityIdContextProxy : public ContextProxy {
386
368
  public:
387
369
  EntityIdContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
388
-
389
370
  Object SimpleId();
390
371
  };
391
372
 
@@ -393,13 +374,11 @@ class EnumerationRefContextProxy : public ContextProxy {
393
374
  public:
394
375
  EnumerationRefContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
395
376
  Object enumerationId();
396
-
397
377
  };
398
378
 
399
379
  class EnumerationIdContextProxy : public ContextProxy {
400
380
  public:
401
381
  EnumerationIdContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
402
-
403
382
  Object SimpleId();
404
383
  };
405
384
 
@@ -407,13 +386,11 @@ class FunctionRefContextProxy : public ContextProxy {
407
386
  public:
408
387
  FunctionRefContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
409
388
  Object functionId();
410
-
411
389
  };
412
390
 
413
391
  class FunctionIdContextProxy : public ContextProxy {
414
392
  public:
415
393
  FunctionIdContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
416
-
417
394
  Object SimpleId();
418
395
  };
419
396
 
@@ -421,13 +398,11 @@ class ParameterRefContextProxy : public ContextProxy {
421
398
  public:
422
399
  ParameterRefContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
423
400
  Object parameterId();
424
-
425
401
  };
426
402
 
427
403
  class ParameterIdContextProxy : public ContextProxy {
428
404
  public:
429
405
  ParameterIdContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
430
-
431
406
  Object SimpleId();
432
407
  };
433
408
 
@@ -435,13 +410,11 @@ class ProcedureRefContextProxy : public ContextProxy {
435
410
  public:
436
411
  ProcedureRefContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
437
412
  Object procedureId();
438
-
439
413
  };
440
414
 
441
415
  class ProcedureIdContextProxy : public ContextProxy {
442
416
  public:
443
417
  ProcedureIdContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
444
-
445
418
  Object SimpleId();
446
419
  };
447
420
 
@@ -449,13 +422,11 @@ class RuleLabelRefContextProxy : public ContextProxy {
449
422
  public:
450
423
  RuleLabelRefContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
451
424
  Object ruleLabelId();
452
-
453
425
  };
454
426
 
455
427
  class RuleLabelIdContextProxy : public ContextProxy {
456
428
  public:
457
429
  RuleLabelIdContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
458
-
459
430
  Object SimpleId();
460
431
  };
461
432
 
@@ -463,13 +434,11 @@ class RuleRefContextProxy : public ContextProxy {
463
434
  public:
464
435
  RuleRefContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
465
436
  Object ruleId();
466
-
467
437
  };
468
438
 
469
439
  class RuleIdContextProxy : public ContextProxy {
470
440
  public:
471
441
  RuleIdContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
472
-
473
442
  Object SimpleId();
474
443
  };
475
444
 
@@ -477,13 +446,11 @@ class SchemaRefContextProxy : public ContextProxy {
477
446
  public:
478
447
  SchemaRefContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
479
448
  Object schemaId();
480
-
481
449
  };
482
450
 
483
451
  class SchemaIdContextProxy : public ContextProxy {
484
452
  public:
485
453
  SchemaIdContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
486
-
487
454
  Object SimpleId();
488
455
  };
489
456
 
@@ -491,13 +458,11 @@ class SubtypeConstraintRefContextProxy : public ContextProxy {
491
458
  public:
492
459
  SubtypeConstraintRefContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
493
460
  Object subtypeConstraintId();
494
-
495
461
  };
496
462
 
497
463
  class SubtypeConstraintIdContextProxy : public ContextProxy {
498
464
  public:
499
465
  SubtypeConstraintIdContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
500
-
501
466
  Object SimpleId();
502
467
  };
503
468
 
@@ -505,13 +470,11 @@ class TypeLabelRefContextProxy : public ContextProxy {
505
470
  public:
506
471
  TypeLabelRefContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
507
472
  Object typeLabelId();
508
-
509
473
  };
510
474
 
511
475
  class TypeLabelIdContextProxy : public ContextProxy {
512
476
  public:
513
477
  TypeLabelIdContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
514
-
515
478
  Object SimpleId();
516
479
  };
517
480
 
@@ -519,13 +482,11 @@ class TypeRefContextProxy : public ContextProxy {
519
482
  public:
520
483
  TypeRefContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
521
484
  Object typeId();
522
-
523
485
  };
524
486
 
525
487
  class TypeIdContextProxy : public ContextProxy {
526
488
  public:
527
489
  TypeIdContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
528
-
529
490
  Object SimpleId();
530
491
  };
531
492
 
@@ -533,27 +494,23 @@ class VariableRefContextProxy : public ContextProxy {
533
494
  public:
534
495
  VariableRefContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
535
496
  Object variableId();
536
-
537
497
  };
538
498
 
539
499
  class VariableIdContextProxy : public ContextProxy {
540
500
  public:
541
501
  VariableIdContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
542
-
543
502
  Object SimpleId();
544
503
  };
545
504
 
546
505
  class AbstractEntityDeclarationContextProxy : public ContextProxy {
547
506
  public:
548
507
  AbstractEntityDeclarationContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
549
-
550
508
  Object ABSTRACT();
551
509
  };
552
510
 
553
511
  class AbstractSupertypeContextProxy : public ContextProxy {
554
512
  public:
555
513
  AbstractSupertypeContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
556
-
557
514
  Object ABSTRACT();
558
515
  Object SUPERTYPE();
559
516
  };
@@ -578,20 +535,17 @@ public:
578
535
  ActualParameterListContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
579
536
  Object parameter();
580
537
  Object parameterAt(size_t i);
581
-
582
538
  };
583
539
 
584
540
  class ParameterContextProxy : public ContextProxy {
585
541
  public:
586
542
  ParameterContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
587
543
  Object expression();
588
-
589
544
  };
590
545
 
591
546
  class AddLikeOpContextProxy : public ContextProxy {
592
547
  public:
593
548
  AddLikeOpContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
594
-
595
549
  Object OR();
596
550
  Object XOR();
597
551
  };
@@ -601,7 +555,6 @@ public:
601
555
  AggregateInitializerContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
602
556
  Object element();
603
557
  Object elementAt(size_t i);
604
-
605
558
  };
606
559
 
607
560
  class ElementContextProxy : public ContextProxy {
@@ -609,14 +562,12 @@ public:
609
562
  ElementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
610
563
  Object expression();
611
564
  Object repetition();
612
-
613
565
  };
614
566
 
615
567
  class AggregateSourceContextProxy : public ContextProxy {
616
568
  public:
617
569
  AggregateSourceContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
618
570
  Object simpleExpression();
619
-
620
571
  };
621
572
 
622
573
  class SimpleExpressionContextProxy : public ContextProxy {
@@ -626,7 +577,6 @@ public:
626
577
  Object termAt(size_t i);
627
578
  Object addLikeOp();
628
579
  Object addLikeOpAt(size_t i);
629
-
630
580
  };
631
581
 
632
582
  class AggregateTypeContextProxy : public ContextProxy {
@@ -644,7 +594,6 @@ public:
644
594
  Object generalizedTypes();
645
595
  Object namedTypes();
646
596
  Object simpleTypes();
647
-
648
597
  };
649
598
 
650
599
  class TypeLabelContextProxy : public ContextProxy {
@@ -652,7 +601,6 @@ public:
652
601
  TypeLabelContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
653
602
  Object typeLabelId();
654
603
  Object typeLabelRef();
655
-
656
604
  };
657
605
 
658
606
  class AggregationTypesContextProxy : public ContextProxy {
@@ -662,7 +610,6 @@ public:
662
610
  Object bagType();
663
611
  Object listType();
664
612
  Object setType();
665
-
666
613
  };
667
614
 
668
615
  class ArrayTypeContextProxy : public ContextProxy {
@@ -711,7 +658,6 @@ public:
711
658
  Object declarationAt(size_t i);
712
659
  Object constantDecl();
713
660
  Object localDecl();
714
-
715
661
  };
716
662
 
717
663
  class DeclarationContextProxy : public ContextProxy {
@@ -722,7 +668,6 @@ public:
722
668
  Object procedureDecl();
723
669
  Object subtypeConstraintDecl();
724
670
  Object typeDecl();
725
-
726
671
  };
727
672
 
728
673
  class ConstantDeclContextProxy : public ContextProxy {
@@ -762,7 +707,6 @@ public:
762
707
  GeneralRefContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
763
708
  Object parameterRef();
764
709
  Object variableId();
765
-
766
710
  };
767
711
 
768
712
  class StmtContextProxy : public ContextProxy {
@@ -779,7 +723,6 @@ public:
779
723
  Object repeatStmt();
780
724
  Object returnStmt();
781
725
  Object skipStmt();
782
-
783
726
  };
784
727
 
785
728
  class QualifierContextProxy : public ContextProxy {
@@ -788,7 +731,6 @@ public:
788
731
  Object attributeQualifier();
789
732
  Object groupQualifier();
790
733
  Object indexQualifier();
791
-
792
734
  };
793
735
 
794
736
  class BoundSpecContextProxy : public ContextProxy {
@@ -796,7 +738,6 @@ public:
796
738
  BoundSpecContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
797
739
  Object bound1();
798
740
  Object bound2();
799
-
800
741
  };
801
742
 
802
743
  class InstantiableTypeContextProxy : public ContextProxy {
@@ -804,7 +745,6 @@ public:
804
745
  InstantiableTypeContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
805
746
  Object concreteTypes();
806
747
  Object entityRef();
807
-
808
748
  };
809
749
 
810
750
  class AssignmentStmtContextProxy : public ContextProxy {
@@ -814,7 +754,6 @@ public:
814
754
  Object expression();
815
755
  Object qualifier();
816
756
  Object qualifierAt(size_t i);
817
-
818
757
  };
819
758
 
820
759
  class ExpressionContextProxy : public ContextProxy {
@@ -823,7 +762,6 @@ public:
823
762
  Object simpleExpression();
824
763
  Object simpleExpressionAt(size_t i);
825
764
  Object relOpExtended();
826
-
827
765
  };
828
766
 
829
767
  class AttributeDeclContextProxy : public ContextProxy {
@@ -831,7 +769,6 @@ public:
831
769
  AttributeDeclContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
832
770
  Object attributeId();
833
771
  Object redeclaredAttribute();
834
-
835
772
  };
836
773
 
837
774
  class RedeclaredAttributeContextProxy : public ContextProxy {
@@ -846,7 +783,6 @@ class AttributeQualifierContextProxy : public ContextProxy {
846
783
  public:
847
784
  AttributeQualifierContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
848
785
  Object attributeRef();
849
-
850
786
  };
851
787
 
852
788
  class BinaryTypeContextProxy : public ContextProxy {
@@ -866,7 +802,6 @@ public:
866
802
  class BooleanTypeContextProxy : public ContextProxy {
867
803
  public:
868
804
  BooleanTypeContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
869
-
870
805
  Object BOOLEAN();
871
806
  };
872
807
 
@@ -874,27 +809,23 @@ class Bound1ContextProxy : public ContextProxy {
874
809
  public:
875
810
  Bound1ContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
876
811
  Object numericExpression();
877
-
878
812
  };
879
813
 
880
814
  class NumericExpressionContextProxy : public ContextProxy {
881
815
  public:
882
816
  NumericExpressionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
883
817
  Object simpleExpression();
884
-
885
818
  };
886
819
 
887
820
  class Bound2ContextProxy : public ContextProxy {
888
821
  public:
889
822
  Bound2ContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
890
823
  Object numericExpression();
891
-
892
824
  };
893
825
 
894
826
  class BuiltInConstantContextProxy : public ContextProxy {
895
827
  public:
896
828
  BuiltInConstantContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
897
-
898
829
  Object CONST_E();
899
830
  Object PI();
900
831
  Object SELF();
@@ -903,7 +834,6 @@ public:
903
834
  class BuiltInFunctionContextProxy : public ContextProxy {
904
835
  public:
905
836
  BuiltInFunctionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
906
-
907
837
  Object ABS();
908
838
  Object ACOS();
909
839
  Object ASIN();
@@ -938,7 +868,6 @@ public:
938
868
  class BuiltInProcedureContextProxy : public ContextProxy {
939
869
  public:
940
870
  BuiltInProcedureContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
941
-
942
871
  Object INSERT();
943
872
  Object REMOVE();
944
873
  };
@@ -949,14 +878,12 @@ public:
949
878
  Object caseLabel();
950
879
  Object caseLabelAt(size_t i);
951
880
  Object stmt();
952
-
953
881
  };
954
882
 
955
883
  class CaseLabelContextProxy : public ContextProxy {
956
884
  public:
957
885
  CaseLabelContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
958
886
  Object expression();
959
-
960
887
  };
961
888
 
962
889
  class CaseStmtContextProxy : public ContextProxy {
@@ -976,7 +903,6 @@ class SelectorContextProxy : public ContextProxy {
976
903
  public:
977
904
  SelectorContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
978
905
  Object expression();
979
-
980
906
  };
981
907
 
982
908
  class CompoundStmtContextProxy : public ContextProxy {
@@ -994,7 +920,6 @@ public:
994
920
  Object aggregationTypes();
995
921
  Object simpleTypes();
996
922
  Object typeRef();
997
-
998
923
  };
999
924
 
1000
925
  class SimpleTypesContextProxy : public ContextProxy {
@@ -1016,7 +941,6 @@ public:
1016
941
  Object constantId();
1017
942
  Object instantiableType();
1018
943
  Object expression();
1019
-
1020
944
  };
1021
945
 
1022
946
  class ConstantFactorContextProxy : public ContextProxy {
@@ -1024,7 +948,6 @@ public:
1024
948
  ConstantFactorContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1025
949
  Object builtInConstant();
1026
950
  Object constantRef();
1027
-
1028
951
  };
1029
952
 
1030
953
  class ConstructedTypesContextProxy : public ContextProxy {
@@ -1032,7 +955,6 @@ public:
1032
955
  ConstructedTypesContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1033
956
  Object enumerationType();
1034
957
  Object selectType();
1035
-
1036
958
  };
1037
959
 
1038
960
  class EnumerationTypeContextProxy : public ContextProxy {
@@ -1107,7 +1029,6 @@ public:
1107
1029
  Object attributeDecl();
1108
1030
  Object parameterType();
1109
1031
  Object expression();
1110
-
1111
1032
  };
1112
1033
 
1113
1034
  class DeriveClauseContextProxy : public ContextProxy {
@@ -1130,7 +1051,6 @@ class RepetitionContextProxy : public ContextProxy {
1130
1051
  public:
1131
1052
  RepetitionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1132
1053
  Object numericExpression();
1133
-
1134
1054
  };
1135
1055
 
1136
1056
  class EntityBodyContextProxy : public ContextProxy {
@@ -1142,7 +1062,6 @@ public:
1142
1062
  Object inverseClause();
1143
1063
  Object uniqueClause();
1144
1064
  Object whereClause();
1145
-
1146
1065
  };
1147
1066
 
1148
1067
  class ExplicitAttrContextProxy : public ContextProxy {
@@ -1184,7 +1103,6 @@ public:
1184
1103
  Object entityRef();
1185
1104
  Object expression();
1186
1105
  Object expressionAt(size_t i);
1187
-
1188
1106
  };
1189
1107
 
1190
1108
  class EntityHeadContextProxy : public ContextProxy {
@@ -1200,7 +1118,6 @@ public:
1200
1118
  SubsuperContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1201
1119
  Object supertypeConstraint();
1202
1120
  Object subtypeDeclaration();
1203
-
1204
1121
  };
1205
1122
 
1206
1123
  class EnumerationExtensionContextProxy : public ContextProxy {
@@ -1217,14 +1134,12 @@ public:
1217
1134
  EnumerationItemsContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1218
1135
  Object enumerationItem();
1219
1136
  Object enumerationItemAt(size_t i);
1220
-
1221
1137
  };
1222
1138
 
1223
1139
  class EnumerationItemContextProxy : public ContextProxy {
1224
1140
  public:
1225
1141
  EnumerationItemContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1226
1142
  Object enumerationId();
1227
-
1228
1143
  };
1229
1144
 
1230
1145
  class EnumerationReferenceContextProxy : public ContextProxy {
@@ -1232,13 +1147,11 @@ public:
1232
1147
  EnumerationReferenceContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1233
1148
  Object enumerationRef();
1234
1149
  Object typeRef();
1235
-
1236
1150
  };
1237
1151
 
1238
1152
  class EscapeStmtContextProxy : public ContextProxy {
1239
1153
  public:
1240
1154
  EscapeStmtContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1241
-
1242
1155
  Object ESCAPE();
1243
1156
  };
1244
1157
 
@@ -1255,7 +1168,6 @@ public:
1255
1168
  FactorContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1256
1169
  Object simpleFactor();
1257
1170
  Object simpleFactorAt(size_t i);
1258
-
1259
1171
  };
1260
1172
 
1261
1173
  class SimpleFactorContextProxy : public ContextProxy {
@@ -1268,7 +1180,6 @@ public:
1268
1180
  Object queryExpression();
1269
1181
  Object simpleFactorExpression();
1270
1182
  Object simpleFactorUnaryExpression();
1271
-
1272
1183
  };
1273
1184
 
1274
1185
  class FormalParameterContextProxy : public ContextProxy {
@@ -1277,7 +1188,6 @@ public:
1277
1188
  Object parameterId();
1278
1189
  Object parameterIdAt(size_t i);
1279
1190
  Object parameterType();
1280
-
1281
1191
  };
1282
1192
 
1283
1193
  class FunctionCallContextProxy : public ContextProxy {
@@ -1286,7 +1196,6 @@ public:
1286
1196
  Object builtInFunction();
1287
1197
  Object functionRef();
1288
1198
  Object actualParameterList();
1289
-
1290
1199
  };
1291
1200
 
1292
1201
  class FunctionHeadContextProxy : public ContextProxy {
@@ -1306,7 +1215,6 @@ public:
1306
1215
  Object generalAggregationTypes();
1307
1216
  Object genericEntityType();
1308
1217
  Object genericType();
1309
-
1310
1218
  };
1311
1219
 
1312
1220
  class GeneralAggregationTypesContextProxy : public ContextProxy {
@@ -1316,7 +1224,6 @@ public:
1316
1224
  Object generalBagType();
1317
1225
  Object generalListType();
1318
1226
  Object generalSetType();
1319
-
1320
1227
  };
1321
1228
 
1322
1229
  class GenericEntityTypeContextProxy : public ContextProxy {
@@ -1376,7 +1283,6 @@ class GroupQualifierContextProxy : public ContextProxy {
1376
1283
  public:
1377
1284
  GroupQualifierContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1378
1285
  Object entityRef();
1379
-
1380
1286
  };
1381
1287
 
1382
1288
  class IfStmtContextProxy : public ContextProxy {
@@ -1403,7 +1309,6 @@ public:
1403
1309
  IfStmtStatementsContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1404
1310
  Object stmt();
1405
1311
  Object stmtAt(size_t i);
1406
-
1407
1312
  };
1408
1313
 
1409
1314
  class IfStmtElseStatementsContextProxy : public ContextProxy {
@@ -1411,14 +1316,12 @@ public:
1411
1316
  IfStmtElseStatementsContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1412
1317
  Object stmt();
1413
1318
  Object stmtAt(size_t i);
1414
-
1415
1319
  };
1416
1320
 
1417
1321
  class IncrementContextProxy : public ContextProxy {
1418
1322
  public:
1419
1323
  IncrementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1420
1324
  Object numericExpression();
1421
-
1422
1325
  };
1423
1326
 
1424
1327
  class IncrementControlContextProxy : public ContextProxy {
@@ -1436,21 +1339,18 @@ class IndexContextProxy : public ContextProxy {
1436
1339
  public:
1437
1340
  IndexContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1438
1341
  Object numericExpression();
1439
-
1440
1342
  };
1441
1343
 
1442
1344
  class Index1ContextProxy : public ContextProxy {
1443
1345
  public:
1444
1346
  Index1ContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1445
1347
  Object index();
1446
-
1447
1348
  };
1448
1349
 
1449
1350
  class Index2ContextProxy : public ContextProxy {
1450
1351
  public:
1451
1352
  Index2ContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1452
1353
  Object index();
1453
-
1454
1354
  };
1455
1355
 
1456
1356
  class IndexQualifierContextProxy : public ContextProxy {
@@ -1458,13 +1358,11 @@ public:
1458
1358
  IndexQualifierContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1459
1359
  Object index1();
1460
1360
  Object index2();
1461
-
1462
1361
  };
1463
1362
 
1464
1363
  class IntegerTypeContextProxy : public ContextProxy {
1465
1364
  public:
1466
1365
  IntegerTypeContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1467
-
1468
1366
  Object INTEGER();
1469
1367
  };
1470
1368
 
@@ -1473,7 +1371,6 @@ public:
1473
1371
  InterfaceSpecificationContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1474
1372
  Object referenceClause();
1475
1373
  Object useClause();
1476
-
1477
1374
  };
1478
1375
 
1479
1376
  class ReferenceClauseContextProxy : public ContextProxy {
@@ -1504,35 +1401,29 @@ public:
1504
1401
  Object intervalOpAt(size_t i);
1505
1402
  Object intervalItem();
1506
1403
  Object intervalHigh();
1507
-
1508
1404
  };
1509
1405
 
1510
1406
  class IntervalLowContextProxy : public ContextProxy {
1511
1407
  public:
1512
1408
  IntervalLowContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1513
1409
  Object simpleExpression();
1514
-
1515
1410
  };
1516
1411
 
1517
1412
  class IntervalOpContextProxy : public ContextProxy {
1518
1413
  public:
1519
1414
  IntervalOpContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1520
-
1521
-
1522
1415
  };
1523
1416
 
1524
1417
  class IntervalItemContextProxy : public ContextProxy {
1525
1418
  public:
1526
1419
  IntervalItemContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1527
1420
  Object simpleExpression();
1528
-
1529
1421
  };
1530
1422
 
1531
1423
  class IntervalHighContextProxy : public ContextProxy {
1532
1424
  public:
1533
1425
  IntervalHighContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1534
1426
  Object simpleExpression();
1535
-
1536
1427
  };
1537
1428
 
1538
1429
  class InverseAttrContextProxy : public ContextProxy {
@@ -1568,7 +1459,6 @@ public:
1568
1459
  class LogicalLiteralContextProxy : public ContextProxy {
1569
1460
  public:
1570
1461
  LogicalLiteralContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1571
-
1572
1462
  Object FALSE();
1573
1463
  Object TRUE();
1574
1464
  Object UNKNOWN();
@@ -1577,7 +1467,6 @@ public:
1577
1467
  class StringLiteralContextProxy : public ContextProxy {
1578
1468
  public:
1579
1469
  StringLiteralContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1580
-
1581
1470
  Object SimpleStringLiteral();
1582
1471
  Object EncodedStringLiteral();
1583
1472
  };
@@ -1589,20 +1478,17 @@ public:
1589
1478
  Object variableIdAt(size_t i);
1590
1479
  Object parameterType();
1591
1480
  Object expression();
1592
-
1593
1481
  };
1594
1482
 
1595
1483
  class LogicalTypeContextProxy : public ContextProxy {
1596
1484
  public:
1597
1485
  LogicalTypeContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1598
-
1599
1486
  Object LOGICAL();
1600
1487
  };
1601
1488
 
1602
1489
  class MultiplicationLikeOpContextProxy : public ContextProxy {
1603
1490
  public:
1604
1491
  MultiplicationLikeOpContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1605
-
1606
1492
  Object DIV();
1607
1493
  Object MOD();
1608
1494
  Object AND();
@@ -1628,14 +1514,11 @@ public:
1628
1514
  class NullStmtContextProxy : public ContextProxy {
1629
1515
  public:
1630
1516
  NullStmtContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1631
-
1632
-
1633
1517
  };
1634
1518
 
1635
1519
  class NumberTypeContextProxy : public ContextProxy {
1636
1520
  public:
1637
1521
  NumberTypeContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1638
-
1639
1522
  Object NUMBER();
1640
1523
  };
1641
1524
 
@@ -1660,14 +1543,12 @@ class PopulationContextProxy : public ContextProxy {
1660
1543
  public:
1661
1544
  PopulationContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1662
1545
  Object entityRef();
1663
-
1664
1546
  };
1665
1547
 
1666
1548
  class PrecisionSpecContextProxy : public ContextProxy {
1667
1549
  public:
1668
1550
  PrecisionSpecContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1669
1551
  Object numericExpression();
1670
-
1671
1552
  };
1672
1553
 
1673
1554
  class PrimaryContextProxy : public ContextProxy {
@@ -1677,7 +1558,6 @@ public:
1677
1558
  Object qualifiableFactor();
1678
1559
  Object qualifier();
1679
1560
  Object qualifierAt(size_t i);
1680
-
1681
1561
  };
1682
1562
 
1683
1563
  class QualifiableFactorContextProxy : public ContextProxy {
@@ -1688,7 +1568,6 @@ public:
1688
1568
  Object functionCall();
1689
1569
  Object generalRef();
1690
1570
  Object population();
1691
-
1692
1571
  };
1693
1572
 
1694
1573
  class ProcedureCallStmtContextProxy : public ContextProxy {
@@ -1697,7 +1576,6 @@ public:
1697
1576
  Object builtInProcedure();
1698
1577
  Object procedureRef();
1699
1578
  Object actualParameterList();
1700
-
1701
1579
  };
1702
1580
 
1703
1581
  class ProcedureHeadContextProxy : public ContextProxy {
@@ -1745,7 +1623,6 @@ public:
1745
1623
  ReferencedAttributeContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1746
1624
  Object attributeRef();
1747
1625
  Object qualifiedAttribute();
1748
-
1749
1626
  };
1750
1627
 
1751
1628
  class ResourceOrRenameContextProxy : public ContextProxy {
@@ -1759,8 +1636,6 @@ public:
1759
1636
  class RelOpContextProxy : public ContextProxy {
1760
1637
  public:
1761
1638
  RelOpContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1762
-
1763
-
1764
1639
  };
1765
1640
 
1766
1641
  class RenameIdContextProxy : public ContextProxy {
@@ -1771,7 +1646,6 @@ public:
1771
1646
  Object functionId();
1772
1647
  Object procedureId();
1773
1648
  Object typeId();
1774
-
1775
1649
  };
1776
1650
 
1777
1651
  class RepeatControlContextProxy : public ContextProxy {
@@ -1780,7 +1654,6 @@ public:
1780
1654
  Object incrementControl();
1781
1655
  Object whileControl();
1782
1656
  Object untilControl();
1783
-
1784
1657
  };
1785
1658
 
1786
1659
  class WhileControlContextProxy : public ContextProxy {
@@ -1815,7 +1688,6 @@ public:
1815
1688
  Object functionRef();
1816
1689
  Object procedureRef();
1817
1690
  Object typeRef();
1818
-
1819
1691
  };
1820
1692
 
1821
1693
  class ReturnStmtContextProxy : public ContextProxy {
@@ -1854,7 +1726,6 @@ public:
1854
1726
  Object constantDecl();
1855
1727
  Object schemaBodyDeclaration();
1856
1728
  Object schemaBodyDeclarationAt(size_t i);
1857
-
1858
1729
  };
1859
1730
 
1860
1731
  class SchemaBodyDeclarationContextProxy : public ContextProxy {
@@ -1862,7 +1733,6 @@ public:
1862
1733
  SchemaBodyDeclarationContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1863
1734
  Object declaration();
1864
1735
  Object ruleDecl();
1865
-
1866
1736
  };
1867
1737
 
1868
1738
  class SchemaDeclContextProxy : public ContextProxy {
@@ -1879,7 +1749,6 @@ class SchemaVersionIdContextProxy : public ContextProxy {
1879
1749
  public:
1880
1750
  SchemaVersionIdContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1881
1751
  Object stringLiteral();
1882
-
1883
1752
  };
1884
1753
 
1885
1754
  class SelectExtensionContextProxy : public ContextProxy {
@@ -1896,7 +1765,6 @@ public:
1896
1765
  SelectListContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1897
1766
  Object namedTypes();
1898
1767
  Object namedTypesAt(size_t i);
1899
-
1900
1768
  };
1901
1769
 
1902
1770
  class TermContextProxy : public ContextProxy {
@@ -1906,7 +1774,6 @@ public:
1906
1774
  Object factorAt(size_t i);
1907
1775
  Object multiplicationLikeOp();
1908
1776
  Object multiplicationLikeOpAt(size_t i);
1909
-
1910
1777
  };
1911
1778
 
1912
1779
  class SimpleFactorExpressionContextProxy : public ContextProxy {
@@ -1914,7 +1781,6 @@ public:
1914
1781
  SimpleFactorExpressionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1915
1782
  Object expression();
1916
1783
  Object primary();
1917
-
1918
1784
  };
1919
1785
 
1920
1786
  class SimpleFactorUnaryExpressionContextProxy : public ContextProxy {
@@ -1922,13 +1788,11 @@ public:
1922
1788
  SimpleFactorUnaryExpressionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1923
1789
  Object unaryOp();
1924
1790
  Object simpleFactorExpression();
1925
-
1926
1791
  };
1927
1792
 
1928
1793
  class UnaryOpContextProxy : public ContextProxy {
1929
1794
  public:
1930
1795
  UnaryOpContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1931
-
1932
1796
  Object NOT();
1933
1797
  };
1934
1798
 
@@ -1942,7 +1806,6 @@ public:
1942
1806
  class SkipStmtContextProxy : public ContextProxy {
1943
1807
  public:
1944
1808
  SkipStmtContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
1945
-
1946
1809
  Object SKIP_();
1947
1810
  };
1948
1811
 
@@ -1952,7 +1815,6 @@ public:
1952
1815
  Object abstractEntityDeclaration();
1953
1816
  Object abstractSupertypeDeclaration();
1954
1817
  Object supertypeRule();
1955
-
1956
1818
  };
1957
1819
 
1958
1820
  class SubtypeDeclarationContextProxy : public ContextProxy {
@@ -1970,7 +1832,6 @@ public:
1970
1832
  Object abstractSupertype();
1971
1833
  Object totalOver();
1972
1834
  Object supertypeExpression();
1973
-
1974
1835
  };
1975
1836
 
1976
1837
  class TotalOverContextProxy : public ContextProxy {
@@ -2012,7 +1873,6 @@ public:
2012
1873
  Object entityRef();
2013
1874
  Object oneOf();
2014
1875
  Object supertypeExpression();
2015
-
2016
1876
  };
2017
1877
 
2018
1878
  class SyntaxContextProxy : public ContextProxy {
@@ -2028,7 +1888,6 @@ public:
2028
1888
  UnderlyingTypeContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
2029
1889
  Object concreteTypes();
2030
1890
  Object constructedTypes();
2031
-
2032
1891
  };
2033
1892
 
2034
1893
  class UniqueRuleContextProxy : public ContextProxy {
@@ -2037,14 +1896,12 @@ public:
2037
1896
  Object referencedAttribute();
2038
1897
  Object referencedAttributeAt(size_t i);
2039
1898
  Object ruleLabelId();
2040
-
2041
1899
  };
2042
1900
 
2043
1901
  class WidthContextProxy : public ContextProxy {
2044
1902
  public:
2045
1903
  WidthContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
2046
1904
  Object numericExpression();
2047
-
2048
1905
  };
2049
1906
 
2050
1907
 
@@ -10185,7 +10042,7 @@ Object ProcedureDeclContextProxy::procedureHead() {
10185
10042
  return child;
10186
10043
  }
10187
10044
  }
10188
-
10045
+
10189
10046
  return Nil;
10190
10047
  }
10191
10048
 
@@ -17304,7 +17161,6 @@ private:
17304
17161
  parser -> lexer = new ExpressLexer(parser -> input);
17305
17162
  parser -> tokens = new CommonTokenStream(parser -> lexer);
17306
17163
  parser -> parser = new ExpressParser(parser -> tokens);
17307
-
17308
17164
  return parser;
17309
17165
  }
17310
17166
 
@@ -18364,9 +18220,9 @@ void Init_express_parser() {
18364
18220
  rb_cParser = define_class_under<ParserProxy>(rb_mExpressParser, "Parser")
18365
18221
  .define_singleton_function("parse", &ParserProxy::parse)
18366
18222
  .define_singleton_function("parse_file", &ParserProxy::parseFile)
18367
- .define_method("syntax", &ParserProxy::syntax)
18368
- .define_method("tokens", &ParserProxy::getTokens)
18369
- .define_method("visit", &ParserProxy::visit);
18223
+ .define_method("syntax", &ParserProxy::syntax, Return().keepAlive())
18224
+ .define_method("tokens", &ParserProxy::getTokens, Return().takeOwnership())
18225
+ .define_method("visit", &ParserProxy::visit, Return().keepAlive());
18370
18226
 
18371
18227
  rb_cAttributeRefContext = define_class_under<AttributeRefContextProxy, ContextProxy>(rb_mExpressParser, "AttributeRefContext")
18372
18228
  .define_method("attribute_id", &AttributeRefContextProxy::attributeId);