@zenstackhq/language 1.0.0-beta.9 → 1.0.0

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.
@@ -70,7 +70,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
70
70
  "terminal": {
71
71
  "$type": "RuleCall",
72
72
  "rule": {
73
- "$ref": "#/rules@60"
73
+ "$ref": "#/rules@67"
74
74
  },
75
75
  "arguments": []
76
76
  }
@@ -105,42 +105,42 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
105
105
  {
106
106
  "$type": "RuleCall",
107
107
  "rule": {
108
- "$ref": "#/rules@5"
108
+ "$ref": "#/rules@4"
109
109
  },
110
110
  "arguments": []
111
111
  },
112
112
  {
113
113
  "$type": "RuleCall",
114
114
  "rule": {
115
- "$ref": "#/rules@7"
115
+ "$ref": "#/rules@6"
116
116
  },
117
117
  "arguments": []
118
118
  },
119
119
  {
120
120
  "$type": "RuleCall",
121
121
  "rule": {
122
- "$ref": "#/rules@30"
122
+ "$ref": "#/rules@37"
123
123
  },
124
124
  "arguments": []
125
125
  },
126
126
  {
127
127
  "$type": "RuleCall",
128
128
  "rule": {
129
- "$ref": "#/rules@34"
129
+ "$ref": "#/rules@41"
130
130
  },
131
131
  "arguments": []
132
132
  },
133
133
  {
134
134
  "$type": "RuleCall",
135
135
  "rule": {
136
- "$ref": "#/rules@36"
136
+ "$ref": "#/rules@43"
137
137
  },
138
138
  "arguments": []
139
139
  },
140
140
  {
141
141
  "$type": "RuleCall",
142
142
  "rule": {
143
- "$ref": "#/rules@45"
143
+ "$ref": "#/rules@52"
144
144
  },
145
145
  "arguments": []
146
146
  }
@@ -162,7 +162,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
162
162
  {
163
163
  "$type": "RuleCall",
164
164
  "rule": {
165
- "$ref": "#/rules@62"
165
+ "$ref": "#/rules@69"
166
166
  },
167
167
  "arguments": [],
168
168
  "cardinality": "*"
@@ -178,7 +178,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
178
178
  "terminal": {
179
179
  "$type": "RuleCall",
180
180
  "rule": {
181
- "$ref": "#/rules@40"
181
+ "$ref": "#/rules@47"
182
182
  },
183
183
  "arguments": []
184
184
  }
@@ -194,7 +194,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
194
194
  "terminal": {
195
195
  "$type": "RuleCall",
196
196
  "rule": {
197
- "$ref": "#/rules@4"
197
+ "$ref": "#/rules@5"
198
198
  },
199
199
  "arguments": []
200
200
  },
@@ -213,76 +213,6 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
213
213
  "parameters": [],
214
214
  "wildcard": false
215
215
  },
216
- {
217
- "$type": "ParserRule",
218
- "name": "DataSourceField",
219
- "definition": {
220
- "$type": "Group",
221
- "elements": [
222
- {
223
- "$type": "RuleCall",
224
- "rule": {
225
- "$ref": "#/rules@62"
226
- },
227
- "arguments": [],
228
- "cardinality": "*"
229
- },
230
- {
231
- "$type": "Assignment",
232
- "feature": "name",
233
- "operator": "=",
234
- "terminal": {
235
- "$type": "RuleCall",
236
- "rule": {
237
- "$ref": "#/rules@40"
238
- },
239
- "arguments": []
240
- }
241
- },
242
- {
243
- "$type": "Keyword",
244
- "value": "="
245
- },
246
- {
247
- "$type": "Assignment",
248
- "feature": "value",
249
- "operator": "=",
250
- "terminal": {
251
- "$type": "Alternatives",
252
- "elements": [
253
- {
254
- "$type": "RuleCall",
255
- "rule": {
256
- "$ref": "#/rules@10"
257
- },
258
- "arguments": []
259
- },
260
- {
261
- "$type": "RuleCall",
262
- "rule": {
263
- "$ref": "#/rules@19"
264
- },
265
- "arguments": []
266
- },
267
- {
268
- "$type": "RuleCall",
269
- "rule": {
270
- "$ref": "#/rules@11"
271
- },
272
- "arguments": []
273
- }
274
- ]
275
- }
276
- }
277
- ]
278
- },
279
- "definesHiddenTokens": false,
280
- "entry": false,
281
- "fragment": false,
282
- "hiddenTokens": [],
283
- "parameters": [],
284
- "wildcard": false
285
- },
286
216
  {
287
217
  "$type": "ParserRule",
288
218
  "name": "GeneratorDecl",
@@ -292,7 +222,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
292
222
  {
293
223
  "$type": "RuleCall",
294
224
  "rule": {
295
- "$ref": "#/rules@62"
225
+ "$ref": "#/rules@69"
296
226
  },
297
227
  "arguments": [],
298
228
  "cardinality": "*"
@@ -308,7 +238,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
308
238
  "terminal": {
309
239
  "$type": "RuleCall",
310
240
  "rule": {
311
- "$ref": "#/rules@40"
241
+ "$ref": "#/rules@47"
312
242
  },
313
243
  "arguments": []
314
244
  }
@@ -324,7 +254,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
324
254
  "terminal": {
325
255
  "$type": "RuleCall",
326
256
  "rule": {
327
- "$ref": "#/rules@6"
257
+ "$ref": "#/rules@5"
328
258
  },
329
259
  "arguments": []
330
260
  },
@@ -345,14 +275,14 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
345
275
  },
346
276
  {
347
277
  "$type": "ParserRule",
348
- "name": "GeneratorField",
278
+ "name": "ConfigField",
349
279
  "definition": {
350
280
  "$type": "Group",
351
281
  "elements": [
352
282
  {
353
283
  "$type": "RuleCall",
354
284
  "rule": {
355
- "$ref": "#/rules@62"
285
+ "$ref": "#/rules@69"
356
286
  },
357
287
  "arguments": [],
358
288
  "cardinality": "*"
@@ -364,7 +294,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
364
294
  "terminal": {
365
295
  "$type": "RuleCall",
366
296
  "rule": {
367
- "$ref": "#/rules@40"
297
+ "$ref": "#/rules@47"
368
298
  },
369
299
  "arguments": []
370
300
  }
@@ -378,23 +308,11 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
378
308
  "feature": "value",
379
309
  "operator": "=",
380
310
  "terminal": {
381
- "$type": "Alternatives",
382
- "elements": [
383
- {
384
- "$type": "RuleCall",
385
- "rule": {
386
- "$ref": "#/rules@10"
387
- },
388
- "arguments": []
389
- },
390
- {
391
- "$type": "RuleCall",
392
- "rule": {
393
- "$ref": "#/rules@11"
394
- },
395
- "arguments": []
396
- }
397
- ]
311
+ "$type": "RuleCall",
312
+ "rule": {
313
+ "$ref": "#/rules@18"
314
+ },
315
+ "arguments": []
398
316
  }
399
317
  }
400
318
  ]
@@ -415,7 +333,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
415
333
  {
416
334
  "$type": "RuleCall",
417
335
  "rule": {
418
- "$ref": "#/rules@62"
336
+ "$ref": "#/rules@69"
419
337
  },
420
338
  "arguments": [],
421
339
  "cardinality": "*"
@@ -431,7 +349,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
431
349
  "terminal": {
432
350
  "$type": "RuleCall",
433
351
  "rule": {
434
- "$ref": "#/rules@40"
352
+ "$ref": "#/rules@47"
435
353
  },
436
354
  "arguments": []
437
355
  }
@@ -447,7 +365,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
447
365
  "terminal": {
448
366
  "$type": "RuleCall",
449
367
  "rule": {
450
- "$ref": "#/rules@8"
368
+ "$ref": "#/rules@7"
451
369
  },
452
370
  "arguments": []
453
371
  },
@@ -475,7 +393,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
475
393
  {
476
394
  "$type": "RuleCall",
477
395
  "rule": {
478
- "$ref": "#/rules@62"
396
+ "$ref": "#/rules@69"
479
397
  },
480
398
  "arguments": [],
481
399
  "cardinality": "*"
@@ -487,7 +405,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
487
405
  "terminal": {
488
406
  "$type": "RuleCall",
489
407
  "rule": {
490
- "$ref": "#/rules@40"
408
+ "$ref": "#/rules@47"
491
409
  },
492
410
  "arguments": []
493
411
  }
@@ -506,21 +424,21 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
506
424
  {
507
425
  "$type": "RuleCall",
508
426
  "rule": {
509
- "$ref": "#/rules@10"
427
+ "$ref": "#/rules@12"
510
428
  },
511
429
  "arguments": []
512
430
  },
513
431
  {
514
432
  "$type": "RuleCall",
515
433
  "rule": {
516
- "$ref": "#/rules@11"
434
+ "$ref": "#/rules@13"
517
435
  },
518
436
  "arguments": []
519
437
  },
520
438
  {
521
439
  "$type": "RuleCall",
522
440
  "rule": {
523
- "$ref": "#/rules@17"
441
+ "$ref": "#/rules@24"
524
442
  },
525
443
  "arguments": []
526
444
  }
@@ -542,7 +460,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
542
460
  "definition": {
543
461
  "$type": "RuleCall",
544
462
  "rule": {
545
- "$ref": "#/rules@26"
463
+ "$ref": "#/rules@33"
546
464
  },
547
465
  "arguments": []
548
466
  },
@@ -555,37 +473,301 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
555
473
  },
556
474
  {
557
475
  "$type": "ParserRule",
558
- "name": "LiteralExpr",
476
+ "name": "NumberLiteral",
477
+ "definition": {
478
+ "$type": "Assignment",
479
+ "feature": "value",
480
+ "operator": "=",
481
+ "terminal": {
482
+ "$type": "RuleCall",
483
+ "rule": {
484
+ "$ref": "#/rules@68"
485
+ },
486
+ "arguments": []
487
+ }
488
+ },
489
+ "definesHiddenTokens": false,
490
+ "entry": false,
491
+ "fragment": false,
492
+ "hiddenTokens": [],
493
+ "parameters": [],
494
+ "wildcard": false
495
+ },
496
+ {
497
+ "$type": "ParserRule",
498
+ "name": "StringLiteral",
499
+ "definition": {
500
+ "$type": "Assignment",
501
+ "feature": "value",
502
+ "operator": "=",
503
+ "terminal": {
504
+ "$type": "RuleCall",
505
+ "rule": {
506
+ "$ref": "#/rules@67"
507
+ },
508
+ "arguments": []
509
+ }
510
+ },
511
+ "definesHiddenTokens": false,
512
+ "entry": false,
513
+ "fragment": false,
514
+ "hiddenTokens": [],
515
+ "parameters": [],
516
+ "wildcard": false
517
+ },
518
+ {
519
+ "$type": "ParserRule",
520
+ "name": "BooleanLiteral",
559
521
  "definition": {
560
522
  "$type": "Assignment",
561
523
  "feature": "value",
562
524
  "operator": "=",
563
525
  "terminal": {
564
- "$type": "Alternatives",
565
- "elements": [
566
- {
526
+ "$type": "RuleCall",
527
+ "rule": {
528
+ "$ref": "#/rules@62"
529
+ },
530
+ "arguments": []
531
+ }
532
+ },
533
+ "definesHiddenTokens": false,
534
+ "entry": false,
535
+ "fragment": false,
536
+ "hiddenTokens": [],
537
+ "parameters": [],
538
+ "wildcard": false
539
+ },
540
+ {
541
+ "$type": "ParserRule",
542
+ "name": "LiteralExpr",
543
+ "definition": {
544
+ "$type": "Alternatives",
545
+ "elements": [
546
+ {
547
+ "$type": "RuleCall",
548
+ "rule": {
549
+ "$ref": "#/rules@9"
550
+ },
551
+ "arguments": []
552
+ },
553
+ {
554
+ "$type": "RuleCall",
555
+ "rule": {
556
+ "$ref": "#/rules@10"
557
+ },
558
+ "arguments": []
559
+ },
560
+ {
561
+ "$type": "RuleCall",
562
+ "rule": {
563
+ "$ref": "#/rules@11"
564
+ },
565
+ "arguments": []
566
+ }
567
+ ]
568
+ },
569
+ "definesHiddenTokens": false,
570
+ "entry": false,
571
+ "fragment": false,
572
+ "hiddenTokens": [],
573
+ "parameters": [],
574
+ "wildcard": false
575
+ },
576
+ {
577
+ "$type": "ParserRule",
578
+ "name": "ArrayExpr",
579
+ "definition": {
580
+ "$type": "Group",
581
+ "elements": [
582
+ {
583
+ "$type": "Keyword",
584
+ "value": "["
585
+ },
586
+ {
587
+ "$type": "Group",
588
+ "elements": [
589
+ {
590
+ "$type": "Assignment",
591
+ "feature": "items",
592
+ "operator": "+=",
593
+ "terminal": {
594
+ "$type": "RuleCall",
595
+ "rule": {
596
+ "$ref": "#/rules@8"
597
+ },
598
+ "arguments": []
599
+ }
600
+ },
601
+ {
602
+ "$type": "Group",
603
+ "elements": [
604
+ {
605
+ "$type": "Keyword",
606
+ "value": ","
607
+ },
608
+ {
609
+ "$type": "Assignment",
610
+ "feature": "items",
611
+ "operator": "+=",
612
+ "terminal": {
613
+ "$type": "RuleCall",
614
+ "rule": {
615
+ "$ref": "#/rules@8"
616
+ },
617
+ "arguments": []
618
+ }
619
+ }
620
+ ],
621
+ "cardinality": "*"
622
+ }
623
+ ],
624
+ "cardinality": "?"
625
+ },
626
+ {
627
+ "$type": "Keyword",
628
+ "value": "]"
629
+ }
630
+ ]
631
+ },
632
+ "definesHiddenTokens": false,
633
+ "entry": false,
634
+ "fragment": false,
635
+ "hiddenTokens": [],
636
+ "parameters": [],
637
+ "wildcard": false
638
+ },
639
+ {
640
+ "$type": "ParserRule",
641
+ "name": "ConfigInvocationExpr",
642
+ "definition": {
643
+ "$type": "Group",
644
+ "elements": [
645
+ {
646
+ "$type": "Assignment",
647
+ "feature": "name",
648
+ "operator": "=",
649
+ "terminal": {
567
650
  "$type": "RuleCall",
568
651
  "rule": {
569
- "$ref": "#/rules@55"
652
+ "$ref": "#/rules@66"
570
653
  },
571
654
  "arguments": []
572
- },
573
- {
655
+ }
656
+ },
657
+ {
658
+ "$type": "Group",
659
+ "elements": [
660
+ {
661
+ "$type": "Keyword",
662
+ "value": "("
663
+ },
664
+ {
665
+ "$type": "RuleCall",
666
+ "rule": {
667
+ "$ref": "#/rules@15"
668
+ },
669
+ "arguments": []
670
+ },
671
+ {
672
+ "$type": "Keyword",
673
+ "value": ")"
674
+ }
675
+ ],
676
+ "cardinality": "?"
677
+ }
678
+ ]
679
+ },
680
+ "definesHiddenTokens": false,
681
+ "entry": false,
682
+ "fragment": false,
683
+ "hiddenTokens": [],
684
+ "parameters": [],
685
+ "wildcard": false
686
+ },
687
+ {
688
+ "$type": "ParserRule",
689
+ "name": "ConfigInvocationArgList",
690
+ "fragment": true,
691
+ "definition": {
692
+ "$type": "Group",
693
+ "elements": [
694
+ {
695
+ "$type": "Assignment",
696
+ "feature": "args",
697
+ "operator": "+=",
698
+ "terminal": {
574
699
  "$type": "RuleCall",
575
700
  "rule": {
576
- "$ref": "#/rules@61"
701
+ "$ref": "#/rules@16"
577
702
  },
578
703
  "arguments": []
579
- },
580
- {
704
+ }
705
+ },
706
+ {
707
+ "$type": "Group",
708
+ "elements": [
709
+ {
710
+ "$type": "Keyword",
711
+ "value": ","
712
+ },
713
+ {
714
+ "$type": "Assignment",
715
+ "feature": "args",
716
+ "operator": "+=",
717
+ "terminal": {
718
+ "$type": "RuleCall",
719
+ "rule": {
720
+ "$ref": "#/rules@16"
721
+ },
722
+ "arguments": []
723
+ }
724
+ }
725
+ ],
726
+ "cardinality": "*"
727
+ }
728
+ ]
729
+ },
730
+ "definesHiddenTokens": false,
731
+ "entry": false,
732
+ "hiddenTokens": [],
733
+ "parameters": [],
734
+ "wildcard": false
735
+ },
736
+ {
737
+ "$type": "ParserRule",
738
+ "name": "ConfigInvocationArg",
739
+ "definition": {
740
+ "$type": "Group",
741
+ "elements": [
742
+ {
743
+ "$type": "Assignment",
744
+ "feature": "name",
745
+ "operator": "=",
746
+ "terminal": {
581
747
  "$type": "RuleCall",
582
748
  "rule": {
583
- "$ref": "#/rules@60"
749
+ "$ref": "#/rules@66"
584
750
  },
585
751
  "arguments": []
586
752
  }
587
- ]
588
- }
753
+ },
754
+ {
755
+ "$type": "Keyword",
756
+ "value": ":"
757
+ },
758
+ {
759
+ "$type": "Assignment",
760
+ "feature": "value",
761
+ "operator": "=",
762
+ "terminal": {
763
+ "$type": "RuleCall",
764
+ "rule": {
765
+ "$ref": "#/rules@12"
766
+ },
767
+ "arguments": []
768
+ }
769
+ }
770
+ ]
589
771
  },
590
772
  "definesHiddenTokens": false,
591
773
  "entry": false,
@@ -596,7 +778,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
596
778
  },
597
779
  {
598
780
  "$type": "ParserRule",
599
- "name": "ArrayExpr",
781
+ "name": "ConfigArrayExpr",
600
782
  "definition": {
601
783
  "$type": "Group",
602
784
  "elements": [
@@ -612,11 +794,23 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
612
794
  "feature": "items",
613
795
  "operator": "+=",
614
796
  "terminal": {
615
- "$type": "RuleCall",
616
- "rule": {
617
- "$ref": "#/rules@9"
618
- },
619
- "arguments": []
797
+ "$type": "Alternatives",
798
+ "elements": [
799
+ {
800
+ "$type": "RuleCall",
801
+ "rule": {
802
+ "$ref": "#/rules@12"
803
+ },
804
+ "arguments": []
805
+ },
806
+ {
807
+ "$type": "RuleCall",
808
+ "rule": {
809
+ "$ref": "#/rules@14"
810
+ },
811
+ "arguments": []
812
+ }
813
+ ]
620
814
  }
621
815
  },
622
816
  {
@@ -631,11 +825,23 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
631
825
  "feature": "items",
632
826
  "operator": "+=",
633
827
  "terminal": {
634
- "$type": "RuleCall",
635
- "rule": {
636
- "$ref": "#/rules@9"
637
- },
638
- "arguments": []
828
+ "$type": "Alternatives",
829
+ "elements": [
830
+ {
831
+ "$type": "RuleCall",
832
+ "rule": {
833
+ "$ref": "#/rules@12"
834
+ },
835
+ "arguments": []
836
+ },
837
+ {
838
+ "$type": "RuleCall",
839
+ "rule": {
840
+ "$ref": "#/rules@14"
841
+ },
842
+ "arguments": []
843
+ }
844
+ ]
639
845
  }
640
846
  }
641
847
  ],
@@ -657,6 +863,42 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
657
863
  "parameters": [],
658
864
  "wildcard": false
659
865
  },
866
+ {
867
+ "$type": "ParserRule",
868
+ "name": "ConfigExpr",
869
+ "definition": {
870
+ "$type": "Alternatives",
871
+ "elements": [
872
+ {
873
+ "$type": "RuleCall",
874
+ "rule": {
875
+ "$ref": "#/rules@12"
876
+ },
877
+ "arguments": []
878
+ },
879
+ {
880
+ "$type": "RuleCall",
881
+ "rule": {
882
+ "$ref": "#/rules@26"
883
+ },
884
+ "arguments": []
885
+ },
886
+ {
887
+ "$type": "RuleCall",
888
+ "rule": {
889
+ "$ref": "#/rules@17"
890
+ },
891
+ "arguments": []
892
+ }
893
+ ]
894
+ },
895
+ "definesHiddenTokens": false,
896
+ "entry": false,
897
+ "fragment": false,
898
+ "hiddenTokens": [],
899
+ "parameters": [],
900
+ "wildcard": false
901
+ },
660
902
  {
661
903
  "$type": "ParserRule",
662
904
  "name": "ThisExpr",
@@ -667,7 +909,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
667
909
  "terminal": {
668
910
  "$type": "RuleCall",
669
911
  "rule": {
670
- "$ref": "#/rules@58"
912
+ "$ref": "#/rules@65"
671
913
  },
672
914
  "arguments": []
673
915
  }
@@ -689,7 +931,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
689
931
  "terminal": {
690
932
  "$type": "RuleCall",
691
933
  "rule": {
692
- "$ref": "#/rules@57"
934
+ "$ref": "#/rules@64"
693
935
  },
694
936
  "arguments": []
695
937
  }
@@ -719,7 +961,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
719
961
  "terminal": {
720
962
  "$type": "RuleCall",
721
963
  "rule": {
722
- "$ref": "#/rules@40"
964
+ "$ref": "#/rules@47"
723
965
  },
724
966
  "arguments": []
725
967
  },
@@ -736,7 +978,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
736
978
  {
737
979
  "$type": "RuleCall",
738
980
  "rule": {
739
- "$ref": "#/rules@15"
981
+ "$ref": "#/rules@22"
740
982
  },
741
983
  "arguments": []
742
984
  },
@@ -770,7 +1012,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
770
1012
  "terminal": {
771
1013
  "$type": "RuleCall",
772
1014
  "rule": {
773
- "$ref": "#/rules@16"
1015
+ "$ref": "#/rules@23"
774
1016
  },
775
1017
  "arguments": []
776
1018
  }
@@ -789,7 +1031,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
789
1031
  "terminal": {
790
1032
  "$type": "RuleCall",
791
1033
  "rule": {
792
- "$ref": "#/rules@16"
1034
+ "$ref": "#/rules@23"
793
1035
  },
794
1036
  "arguments": []
795
1037
  }
@@ -871,7 +1113,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
871
1113
  "terminal": {
872
1114
  "$type": "RuleCall",
873
1115
  "rule": {
874
- "$ref": "#/rules@18"
1116
+ "$ref": "#/rules@25"
875
1117
  },
876
1118
  "arguments": []
877
1119
  }
@@ -890,7 +1132,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
890
1132
  "terminal": {
891
1133
  "$type": "RuleCall",
892
1134
  "rule": {
893
- "$ref": "#/rules@18"
1135
+ "$ref": "#/rules@25"
894
1136
  },
895
1137
  "arguments": []
896
1138
  }
@@ -932,7 +1174,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
932
1174
  "terminal": {
933
1175
  "$type": "RuleCall",
934
1176
  "rule": {
935
- "$ref": "#/rules@40"
1177
+ "$ref": "#/rules@47"
936
1178
  },
937
1179
  "arguments": []
938
1180
  }
@@ -948,7 +1190,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
948
1190
  "terminal": {
949
1191
  "$type": "RuleCall",
950
1192
  "rule": {
951
- "$ref": "#/rules@9"
1193
+ "$ref": "#/rules@8"
952
1194
  },
953
1195
  "arguments": []
954
1196
  }
@@ -975,7 +1217,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
975
1217
  "terminal": {
976
1218
  "$type": "CrossReference",
977
1219
  "type": {
978
- "$ref": "#/rules@36"
1220
+ "$ref": "#/rules@43"
979
1221
  },
980
1222
  "deprecatedSyntax": false
981
1223
  }
@@ -987,7 +1229,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
987
1229
  {
988
1230
  "$type": "RuleCall",
989
1231
  "rule": {
990
- "$ref": "#/rules@28"
1232
+ "$ref": "#/rules@35"
991
1233
  },
992
1234
  "arguments": [],
993
1235
  "cardinality": "?"
@@ -1018,7 +1260,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1018
1260
  {
1019
1261
  "$type": "RuleCall",
1020
1262
  "rule": {
1021
- "$ref": "#/rules@27"
1263
+ "$ref": "#/rules@34"
1022
1264
  },
1023
1265
  "arguments": []
1024
1266
  },
@@ -1048,7 +1290,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1048
1290
  "terminal": {
1049
1291
  "$type": "CrossReference",
1050
1292
  "type": {
1051
- "$ref": "#/rules@31"
1293
+ "$ref": "#/rules@38"
1052
1294
  },
1053
1295
  "deprecatedSyntax": false
1054
1296
  }
@@ -1089,7 +1331,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1089
1331
  "terminal": {
1090
1332
  "$type": "RuleCall",
1091
1333
  "rule": {
1092
- "$ref": "#/rules@20"
1334
+ "$ref": "#/rules@27"
1093
1335
  },
1094
1336
  "arguments": []
1095
1337
  }
@@ -1116,7 +1358,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1116
1358
  {
1117
1359
  "$type": "RuleCall",
1118
1360
  "rule": {
1119
- "$ref": "#/rules@20"
1361
+ "$ref": "#/rules@27"
1120
1362
  },
1121
1363
  "arguments": []
1122
1364
  },
@@ -1165,7 +1407,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1165
1407
  "terminal": {
1166
1408
  "$type": "RuleCall",
1167
1409
  "rule": {
1168
- "$ref": "#/rules@9"
1410
+ "$ref": "#/rules@8"
1169
1411
  },
1170
1412
  "arguments": []
1171
1413
  }
@@ -1199,7 +1441,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1199
1441
  {
1200
1442
  "$type": "RuleCall",
1201
1443
  "rule": {
1202
- "$ref": "#/rules@22"
1444
+ "$ref": "#/rules@29"
1203
1445
  },
1204
1446
  "arguments": []
1205
1447
  },
@@ -1231,7 +1473,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1231
1473
  "terminal": {
1232
1474
  "$type": "RuleCall",
1233
1475
  "rule": {
1234
- "$ref": "#/rules@22"
1476
+ "$ref": "#/rules@29"
1235
1477
  },
1236
1478
  "arguments": []
1237
1479
  }
@@ -1261,7 +1503,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1261
1503
  {
1262
1504
  "$type": "RuleCall",
1263
1505
  "rule": {
1264
- "$ref": "#/rules@23"
1506
+ "$ref": "#/rules@30"
1265
1507
  },
1266
1508
  "arguments": []
1267
1509
  },
@@ -1310,7 +1552,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1310
1552
  "terminal": {
1311
1553
  "$type": "RuleCall",
1312
1554
  "rule": {
1313
- "$ref": "#/rules@23"
1555
+ "$ref": "#/rules@30"
1314
1556
  },
1315
1557
  "arguments": []
1316
1558
  }
@@ -1340,7 +1582,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1340
1582
  {
1341
1583
  "$type": "RuleCall",
1342
1584
  "rule": {
1343
- "$ref": "#/rules@24"
1585
+ "$ref": "#/rules@31"
1344
1586
  },
1345
1587
  "arguments": []
1346
1588
  },
@@ -1381,7 +1623,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1381
1623
  "terminal": {
1382
1624
  "$type": "RuleCall",
1383
1625
  "rule": {
1384
- "$ref": "#/rules@24"
1626
+ "$ref": "#/rules@31"
1385
1627
  },
1386
1628
  "arguments": []
1387
1629
  }
@@ -1411,7 +1653,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1411
1653
  {
1412
1654
  "$type": "RuleCall",
1413
1655
  "rule": {
1414
- "$ref": "#/rules@25"
1656
+ "$ref": "#/rules@32"
1415
1657
  },
1416
1658
  "arguments": []
1417
1659
  },
@@ -1452,7 +1694,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1452
1694
  "terminal": {
1453
1695
  "$type": "RuleCall",
1454
1696
  "rule": {
1455
- "$ref": "#/rules@25"
1697
+ "$ref": "#/rules@32"
1456
1698
  },
1457
1699
  "arguments": []
1458
1700
  }
@@ -1489,7 +1731,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1489
1731
  {
1490
1732
  "$type": "RuleCall",
1491
1733
  "rule": {
1492
- "$ref": "#/rules@9"
1734
+ "$ref": "#/rules@8"
1493
1735
  },
1494
1736
  "arguments": []
1495
1737
  },
@@ -1502,56 +1744,56 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1502
1744
  {
1503
1745
  "$type": "RuleCall",
1504
1746
  "rule": {
1505
- "$ref": "#/rules@12"
1747
+ "$ref": "#/rules@19"
1506
1748
  },
1507
1749
  "arguments": []
1508
1750
  },
1509
1751
  {
1510
1752
  "$type": "RuleCall",
1511
1753
  "rule": {
1512
- "$ref": "#/rules@13"
1754
+ "$ref": "#/rules@20"
1513
1755
  },
1514
1756
  "arguments": []
1515
1757
  },
1516
1758
  {
1517
1759
  "$type": "RuleCall",
1518
1760
  "rule": {
1519
- "$ref": "#/rules@10"
1761
+ "$ref": "#/rules@12"
1520
1762
  },
1521
1763
  "arguments": []
1522
1764
  },
1523
1765
  {
1524
1766
  "$type": "RuleCall",
1525
1767
  "rule": {
1526
- "$ref": "#/rules@21"
1768
+ "$ref": "#/rules@28"
1527
1769
  },
1528
1770
  "arguments": []
1529
1771
  },
1530
1772
  {
1531
1773
  "$type": "RuleCall",
1532
1774
  "rule": {
1533
- "$ref": "#/rules@19"
1775
+ "$ref": "#/rules@26"
1534
1776
  },
1535
1777
  "arguments": []
1536
1778
  },
1537
1779
  {
1538
1780
  "$type": "RuleCall",
1539
1781
  "rule": {
1540
- "$ref": "#/rules@11"
1782
+ "$ref": "#/rules@13"
1541
1783
  },
1542
1784
  "arguments": []
1543
1785
  },
1544
1786
  {
1545
1787
  "$type": "RuleCall",
1546
1788
  "rule": {
1547
- "$ref": "#/rules@14"
1789
+ "$ref": "#/rules@21"
1548
1790
  },
1549
1791
  "arguments": []
1550
1792
  },
1551
1793
  {
1552
1794
  "$type": "RuleCall",
1553
1795
  "rule": {
1554
- "$ref": "#/rules@17"
1796
+ "$ref": "#/rules@24"
1555
1797
  },
1556
1798
  "arguments": []
1557
1799
  }
@@ -1578,7 +1820,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1578
1820
  "terminal": {
1579
1821
  "$type": "RuleCall",
1580
1822
  "rule": {
1581
- "$ref": "#/rules@29"
1823
+ "$ref": "#/rules@36"
1582
1824
  },
1583
1825
  "arguments": []
1584
1826
  }
@@ -1597,7 +1839,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1597
1839
  "terminal": {
1598
1840
  "$type": "RuleCall",
1599
1841
  "rule": {
1600
- "$ref": "#/rules@29"
1842
+ "$ref": "#/rules@36"
1601
1843
  },
1602
1844
  "arguments": []
1603
1845
  }
@@ -1629,7 +1871,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1629
1871
  "terminal": {
1630
1872
  "$type": "RuleCall",
1631
1873
  "rule": {
1632
- "$ref": "#/rules@40"
1874
+ "$ref": "#/rules@47"
1633
1875
  },
1634
1876
  "arguments": []
1635
1877
  }
@@ -1648,7 +1890,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1648
1890
  "terminal": {
1649
1891
  "$type": "RuleCall",
1650
1892
  "rule": {
1651
- "$ref": "#/rules@9"
1893
+ "$ref": "#/rules@8"
1652
1894
  },
1653
1895
  "arguments": []
1654
1896
  }
@@ -1675,7 +1917,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1675
1917
  "terminal": {
1676
1918
  "$type": "RuleCall",
1677
1919
  "rule": {
1678
- "$ref": "#/rules@62"
1920
+ "$ref": "#/rules@69"
1679
1921
  },
1680
1922
  "arguments": []
1681
1923
  },
@@ -1708,7 +1950,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1708
1950
  "terminal": {
1709
1951
  "$type": "RuleCall",
1710
1952
  "rule": {
1711
- "$ref": "#/rules@40"
1953
+ "$ref": "#/rules@47"
1712
1954
  },
1713
1955
  "arguments": []
1714
1956
  }
@@ -1727,7 +1969,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1727
1969
  "terminal": {
1728
1970
  "$type": "CrossReference",
1729
1971
  "type": {
1730
- "$ref": "#/rules@30"
1972
+ "$ref": "#/rules@37"
1731
1973
  },
1732
1974
  "deprecatedSyntax": false
1733
1975
  }
@@ -1746,7 +1988,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1746
1988
  "terminal": {
1747
1989
  "$type": "CrossReference",
1748
1990
  "type": {
1749
- "$ref": "#/rules@30"
1991
+ "$ref": "#/rules@37"
1750
1992
  },
1751
1993
  "deprecatedSyntax": false
1752
1994
  }
@@ -1778,7 +2020,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1778
2020
  "terminal": {
1779
2021
  "$type": "RuleCall",
1780
2022
  "rule": {
1781
- "$ref": "#/rules@40"
2023
+ "$ref": "#/rules@47"
1782
2024
  },
1783
2025
  "arguments": []
1784
2026
  }
@@ -1801,7 +2043,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1801
2043
  "terminal": {
1802
2044
  "$type": "RuleCall",
1803
2045
  "rule": {
1804
- "$ref": "#/rules@31"
2046
+ "$ref": "#/rules@38"
1805
2047
  },
1806
2048
  "arguments": []
1807
2049
  }
@@ -1813,7 +2055,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1813
2055
  "terminal": {
1814
2056
  "$type": "RuleCall",
1815
2057
  "rule": {
1816
- "$ref": "#/rules@49"
2058
+ "$ref": "#/rules@56"
1817
2059
  },
1818
2060
  "arguments": []
1819
2061
  }
@@ -1847,7 +2089,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1847
2089
  "terminal": {
1848
2090
  "$type": "RuleCall",
1849
2091
  "rule": {
1850
- "$ref": "#/rules@62"
2092
+ "$ref": "#/rules@69"
1851
2093
  },
1852
2094
  "arguments": []
1853
2095
  },
@@ -1860,7 +2102,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1860
2102
  "terminal": {
1861
2103
  "$type": "RuleCall",
1862
2104
  "rule": {
1863
- "$ref": "#/rules@40"
2105
+ "$ref": "#/rules@47"
1864
2106
  },
1865
2107
  "arguments": []
1866
2108
  }
@@ -1872,7 +2114,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1872
2114
  "terminal": {
1873
2115
  "$type": "RuleCall",
1874
2116
  "rule": {
1875
- "$ref": "#/rules@32"
2117
+ "$ref": "#/rules@39"
1876
2118
  },
1877
2119
  "arguments": []
1878
2120
  }
@@ -1884,7 +2126,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1884
2126
  "terminal": {
1885
2127
  "$type": "RuleCall",
1886
2128
  "rule": {
1887
- "$ref": "#/rules@48"
2129
+ "$ref": "#/rules@55"
1888
2130
  },
1889
2131
  "arguments": []
1890
2132
  },
@@ -1915,7 +2157,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1915
2157
  "terminal": {
1916
2158
  "$type": "RuleCall",
1917
2159
  "rule": {
1918
- "$ref": "#/rules@54"
2160
+ "$ref": "#/rules@61"
1919
2161
  },
1920
2162
  "arguments": []
1921
2163
  }
@@ -1927,7 +2169,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1927
2169
  "terminal": {
1928
2170
  "$type": "RuleCall",
1929
2171
  "rule": {
1930
- "$ref": "#/rules@33"
2172
+ "$ref": "#/rules@40"
1931
2173
  },
1932
2174
  "arguments": []
1933
2175
  }
@@ -1944,7 +2186,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1944
2186
  "terminal": {
1945
2187
  "$type": "RuleCall",
1946
2188
  "rule": {
1947
- "$ref": "#/rules@40"
2189
+ "$ref": "#/rules@47"
1948
2190
  },
1949
2191
  "arguments": []
1950
2192
  },
@@ -2012,7 +2254,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2012
2254
  "terminal": {
2013
2255
  "$type": "RuleCall",
2014
2256
  "rule": {
2015
- "$ref": "#/rules@10"
2257
+ "$ref": "#/rules@12"
2016
2258
  },
2017
2259
  "arguments": []
2018
2260
  }
@@ -2043,7 +2285,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2043
2285
  "terminal": {
2044
2286
  "$type": "RuleCall",
2045
2287
  "rule": {
2046
- "$ref": "#/rules@62"
2288
+ "$ref": "#/rules@69"
2047
2289
  },
2048
2290
  "arguments": []
2049
2291
  },
@@ -2060,7 +2302,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2060
2302
  "terminal": {
2061
2303
  "$type": "RuleCall",
2062
2304
  "rule": {
2063
- "$ref": "#/rules@40"
2305
+ "$ref": "#/rules@47"
2064
2306
  },
2065
2307
  "arguments": []
2066
2308
  }
@@ -2079,7 +2321,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2079
2321
  "terminal": {
2080
2322
  "$type": "RuleCall",
2081
2323
  "rule": {
2082
- "$ref": "#/rules@35"
2324
+ "$ref": "#/rules@42"
2083
2325
  },
2084
2326
  "arguments": []
2085
2327
  }
@@ -2091,7 +2333,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2091
2333
  "terminal": {
2092
2334
  "$type": "RuleCall",
2093
2335
  "rule": {
2094
- "$ref": "#/rules@49"
2336
+ "$ref": "#/rules@56"
2095
2337
  },
2096
2338
  "arguments": []
2097
2339
  }
@@ -2125,7 +2367,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2125
2367
  "terminal": {
2126
2368
  "$type": "RuleCall",
2127
2369
  "rule": {
2128
- "$ref": "#/rules@62"
2370
+ "$ref": "#/rules@69"
2129
2371
  },
2130
2372
  "arguments": []
2131
2373
  },
@@ -2138,7 +2380,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2138
2380
  "terminal": {
2139
2381
  "$type": "RuleCall",
2140
2382
  "rule": {
2141
- "$ref": "#/rules@40"
2383
+ "$ref": "#/rules@47"
2142
2384
  },
2143
2385
  "arguments": []
2144
2386
  }
@@ -2150,7 +2392,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2150
2392
  "terminal": {
2151
2393
  "$type": "RuleCall",
2152
2394
  "rule": {
2153
- "$ref": "#/rules@48"
2395
+ "$ref": "#/rules@55"
2154
2396
  },
2155
2397
  "arguments": []
2156
2398
  },
@@ -2174,7 +2416,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2174
2416
  {
2175
2417
  "$type": "RuleCall",
2176
2418
  "rule": {
2177
- "$ref": "#/rules@62"
2419
+ "$ref": "#/rules@69"
2178
2420
  },
2179
2421
  "arguments": [],
2180
2422
  "cardinality": "*"
@@ -2190,7 +2432,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2190
2432
  "terminal": {
2191
2433
  "$type": "RuleCall",
2192
2434
  "rule": {
2193
- "$ref": "#/rules@40"
2435
+ "$ref": "#/rules@47"
2194
2436
  },
2195
2437
  "arguments": []
2196
2438
  }
@@ -2209,7 +2451,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2209
2451
  "terminal": {
2210
2452
  "$type": "RuleCall",
2211
2453
  "rule": {
2212
- "$ref": "#/rules@37"
2454
+ "$ref": "#/rules@44"
2213
2455
  },
2214
2456
  "arguments": []
2215
2457
  }
@@ -2228,7 +2470,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2228
2470
  "terminal": {
2229
2471
  "$type": "RuleCall",
2230
2472
  "rule": {
2231
- "$ref": "#/rules@37"
2473
+ "$ref": "#/rules@44"
2232
2474
  },
2233
2475
  "arguments": []
2234
2476
  }
@@ -2254,7 +2496,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2254
2496
  "terminal": {
2255
2497
  "$type": "RuleCall",
2256
2498
  "rule": {
2257
- "$ref": "#/rules@38"
2499
+ "$ref": "#/rules@45"
2258
2500
  },
2259
2501
  "arguments": []
2260
2502
  }
@@ -2270,7 +2512,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2270
2512
  "terminal": {
2271
2513
  "$type": "RuleCall",
2272
2514
  "rule": {
2273
- "$ref": "#/rules@9"
2515
+ "$ref": "#/rules@8"
2274
2516
  },
2275
2517
  "arguments": []
2276
2518
  },
@@ -2287,7 +2529,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2287
2529
  "terminal": {
2288
2530
  "$type": "RuleCall",
2289
2531
  "rule": {
2290
- "$ref": "#/rules@50"
2532
+ "$ref": "#/rules@57"
2291
2533
  },
2292
2534
  "arguments": []
2293
2535
  },
@@ -2311,7 +2553,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2311
2553
  {
2312
2554
  "$type": "RuleCall",
2313
2555
  "rule": {
2314
- "$ref": "#/rules@62"
2556
+ "$ref": "#/rules@69"
2315
2557
  },
2316
2558
  "arguments": [],
2317
2559
  "cardinality": "*"
@@ -2323,7 +2565,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2323
2565
  "terminal": {
2324
2566
  "$type": "RuleCall",
2325
2567
  "rule": {
2326
- "$ref": "#/rules@40"
2568
+ "$ref": "#/rules@47"
2327
2569
  },
2328
2570
  "arguments": []
2329
2571
  }
@@ -2339,7 +2581,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2339
2581
  "terminal": {
2340
2582
  "$type": "RuleCall",
2341
2583
  "rule": {
2342
- "$ref": "#/rules@38"
2584
+ "$ref": "#/rules@45"
2343
2585
  },
2344
2586
  "arguments": []
2345
2587
  }
@@ -2379,7 +2621,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2379
2621
  "terminal": {
2380
2622
  "$type": "RuleCall",
2381
2623
  "rule": {
2382
- "$ref": "#/rules@53"
2624
+ "$ref": "#/rules@60"
2383
2625
  },
2384
2626
  "arguments": []
2385
2627
  }
@@ -2396,7 +2638,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2396
2638
  "terminal": {
2397
2639
  "$type": "RuleCall",
2398
2640
  "rule": {
2399
- "$ref": "#/rules@40"
2641
+ "$ref": "#/rules@47"
2400
2642
  },
2401
2643
  "arguments": []
2402
2644
  },
@@ -2443,7 +2685,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2443
2685
  {
2444
2686
  "$type": "RuleCall",
2445
2687
  "rule": {
2446
- "$ref": "#/rules@59"
2688
+ "$ref": "#/rules@66"
2447
2689
  },
2448
2690
  "arguments": []
2449
2691
  },
@@ -2460,14 +2702,14 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2460
2702
  {
2461
2703
  "$type": "RuleCall",
2462
2704
  "rule": {
2463
- "$ref": "#/rules@59"
2705
+ "$ref": "#/rules@66"
2464
2706
  },
2465
2707
  "arguments": []
2466
2708
  },
2467
2709
  {
2468
2710
  "$type": "RuleCall",
2469
2711
  "rule": {
2470
- "$ref": "#/rules@54"
2712
+ "$ref": "#/rules@61"
2471
2713
  },
2472
2714
  "arguments": []
2473
2715
  }
@@ -2495,7 +2737,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2495
2737
  {
2496
2738
  "$type": "RuleCall",
2497
2739
  "rule": {
2498
- "$ref": "#/rules@59"
2740
+ "$ref": "#/rules@66"
2499
2741
  },
2500
2742
  "arguments": []
2501
2743
  },
@@ -2554,7 +2796,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2554
2796
  {
2555
2797
  "$type": "RuleCall",
2556
2798
  "rule": {
2557
- "$ref": "#/rules@39"
2799
+ "$ref": "#/rules@46"
2558
2800
  },
2559
2801
  "arguments": []
2560
2802
  }
@@ -2581,7 +2823,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2581
2823
  {
2582
2824
  "$type": "RuleCall",
2583
2825
  "rule": {
2584
- "$ref": "#/rules@39"
2826
+ "$ref": "#/rules@46"
2585
2827
  },
2586
2828
  "arguments": []
2587
2829
  }
@@ -2608,7 +2850,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2608
2850
  {
2609
2851
  "$type": "RuleCall",
2610
2852
  "rule": {
2611
- "$ref": "#/rules@39"
2853
+ "$ref": "#/rules@46"
2612
2854
  },
2613
2855
  "arguments": []
2614
2856
  }
@@ -2631,21 +2873,21 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2631
2873
  {
2632
2874
  "$type": "RuleCall",
2633
2875
  "rule": {
2634
- "$ref": "#/rules@42"
2876
+ "$ref": "#/rules@49"
2635
2877
  },
2636
2878
  "arguments": []
2637
2879
  },
2638
2880
  {
2639
2881
  "$type": "RuleCall",
2640
2882
  "rule": {
2641
- "$ref": "#/rules@43"
2883
+ "$ref": "#/rules@50"
2642
2884
  },
2643
2885
  "arguments": []
2644
2886
  },
2645
2887
  {
2646
2888
  "$type": "RuleCall",
2647
2889
  "rule": {
2648
- "$ref": "#/rules@41"
2890
+ "$ref": "#/rules@48"
2649
2891
  },
2650
2892
  "arguments": []
2651
2893
  }
@@ -2667,7 +2909,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2667
2909
  {
2668
2910
  "$type": "RuleCall",
2669
2911
  "rule": {
2670
- "$ref": "#/rules@62"
2912
+ "$ref": "#/rules@69"
2671
2913
  },
2672
2914
  "arguments": [],
2673
2915
  "cardinality": "*"
@@ -2683,7 +2925,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2683
2925
  "terminal": {
2684
2926
  "$type": "RuleCall",
2685
2927
  "rule": {
2686
- "$ref": "#/rules@44"
2928
+ "$ref": "#/rules@51"
2687
2929
  },
2688
2930
  "arguments": []
2689
2931
  }
@@ -2702,7 +2944,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2702
2944
  "terminal": {
2703
2945
  "$type": "RuleCall",
2704
2946
  "rule": {
2705
- "$ref": "#/rules@46"
2947
+ "$ref": "#/rules@53"
2706
2948
  },
2707
2949
  "arguments": []
2708
2950
  }
@@ -2721,7 +2963,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2721
2963
  "terminal": {
2722
2964
  "$type": "RuleCall",
2723
2965
  "rule": {
2724
- "$ref": "#/rules@46"
2966
+ "$ref": "#/rules@53"
2725
2967
  },
2726
2968
  "arguments": []
2727
2969
  }
@@ -2743,7 +2985,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2743
2985
  "terminal": {
2744
2986
  "$type": "RuleCall",
2745
2987
  "rule": {
2746
- "$ref": "#/rules@50"
2988
+ "$ref": "#/rules@57"
2747
2989
  },
2748
2990
  "arguments": []
2749
2991
  },
@@ -2767,7 +3009,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2767
3009
  {
2768
3010
  "$type": "RuleCall",
2769
3011
  "rule": {
2770
- "$ref": "#/rules@62"
3012
+ "$ref": "#/rules@69"
2771
3013
  },
2772
3014
  "arguments": [],
2773
3015
  "cardinality": "*"
@@ -2789,7 +3031,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2789
3031
  "terminal": {
2790
3032
  "$type": "RuleCall",
2791
3033
  "rule": {
2792
- "$ref": "#/rules@40"
3034
+ "$ref": "#/rules@47"
2793
3035
  },
2794
3036
  "arguments": []
2795
3037
  }
@@ -2805,7 +3047,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2805
3047
  "terminal": {
2806
3048
  "$type": "RuleCall",
2807
3049
  "rule": {
2808
- "$ref": "#/rules@47"
3050
+ "$ref": "#/rules@54"
2809
3051
  },
2810
3052
  "arguments": []
2811
3053
  }
@@ -2838,7 +3080,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2838
3080
  {
2839
3081
  "$type": "RuleCall",
2840
3082
  "rule": {
2841
- "$ref": "#/rules@53"
3083
+ "$ref": "#/rules@60"
2842
3084
  },
2843
3085
  "arguments": []
2844
3086
  },
@@ -2869,7 +3111,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2869
3111
  "terminal": {
2870
3112
  "$type": "RuleCall",
2871
3113
  "rule": {
2872
- "$ref": "#/rules@40"
3114
+ "$ref": "#/rules@47"
2873
3115
  },
2874
3116
  "arguments": []
2875
3117
  },
@@ -2929,12 +3171,12 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2929
3171
  "terminal": {
2930
3172
  "$type": "CrossReference",
2931
3173
  "type": {
2932
- "$ref": "#/rules@45"
3174
+ "$ref": "#/rules@52"
2933
3175
  },
2934
3176
  "terminal": {
2935
3177
  "$type": "RuleCall",
2936
3178
  "rule": {
2937
- "$ref": "#/rules@43"
3179
+ "$ref": "#/rules@50"
2938
3180
  },
2939
3181
  "arguments": []
2940
3182
  },
@@ -2951,7 +3193,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2951
3193
  {
2952
3194
  "$type": "RuleCall",
2953
3195
  "rule": {
2954
- "$ref": "#/rules@51"
3196
+ "$ref": "#/rules@58"
2955
3197
  },
2956
3198
  "arguments": [],
2957
3199
  "cardinality": "?"
@@ -2981,7 +3223,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2981
3223
  {
2982
3224
  "$type": "RuleCall",
2983
3225
  "rule": {
2984
- "$ref": "#/rules@62"
3226
+ "$ref": "#/rules@69"
2985
3227
  },
2986
3228
  "arguments": [],
2987
3229
  "cardinality": "*"
@@ -2993,12 +3235,12 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2993
3235
  "terminal": {
2994
3236
  "$type": "CrossReference",
2995
3237
  "type": {
2996
- "$ref": "#/rules@45"
3238
+ "$ref": "#/rules@52"
2997
3239
  },
2998
3240
  "terminal": {
2999
3241
  "$type": "RuleCall",
3000
3242
  "rule": {
3001
- "$ref": "#/rules@42"
3243
+ "$ref": "#/rules@49"
3002
3244
  },
3003
3245
  "arguments": []
3004
3246
  },
@@ -3015,7 +3257,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
3015
3257
  {
3016
3258
  "$type": "RuleCall",
3017
3259
  "rule": {
3018
- "$ref": "#/rules@51"
3260
+ "$ref": "#/rules@58"
3019
3261
  },
3020
3262
  "arguments": [],
3021
3263
  "cardinality": "?"
@@ -3049,12 +3291,12 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
3049
3291
  "terminal": {
3050
3292
  "$type": "CrossReference",
3051
3293
  "type": {
3052
- "$ref": "#/rules@45"
3294
+ "$ref": "#/rules@52"
3053
3295
  },
3054
3296
  "terminal": {
3055
3297
  "$type": "RuleCall",
3056
3298
  "rule": {
3057
- "$ref": "#/rules@41"
3299
+ "$ref": "#/rules@48"
3058
3300
  },
3059
3301
  "arguments": []
3060
3302
  },
@@ -3071,7 +3313,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
3071
3313
  {
3072
3314
  "$type": "RuleCall",
3073
3315
  "rule": {
3074
- "$ref": "#/rules@51"
3316
+ "$ref": "#/rules@58"
3075
3317
  },
3076
3318
  "arguments": [],
3077
3319
  "cardinality": "?"
@@ -3106,7 +3348,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
3106
3348
  "terminal": {
3107
3349
  "$type": "RuleCall",
3108
3350
  "rule": {
3109
- "$ref": "#/rules@52"
3351
+ "$ref": "#/rules@59"
3110
3352
  },
3111
3353
  "arguments": []
3112
3354
  }
@@ -3125,7 +3367,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
3125
3367
  "terminal": {
3126
3368
  "$type": "RuleCall",
3127
3369
  "rule": {
3128
- "$ref": "#/rules@52"
3370
+ "$ref": "#/rules@59"
3129
3371
  },
3130
3372
  "arguments": []
3131
3373
  }
@@ -3157,7 +3399,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
3157
3399
  "terminal": {
3158
3400
  "$type": "RuleCall",
3159
3401
  "rule": {
3160
- "$ref": "#/rules@40"
3402
+ "$ref": "#/rules@47"
3161
3403
  },
3162
3404
  "arguments": []
3163
3405
  }
@@ -3176,7 +3418,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
3176
3418
  "terminal": {
3177
3419
  "$type": "RuleCall",
3178
3420
  "rule": {
3179
- "$ref": "#/rules@9"
3421
+ "$ref": "#/rules@8"
3180
3422
  },
3181
3423
  "arguments": []
3182
3424
  }
@@ -3369,7 +3611,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
3369
3611
  "name": "STRING",
3370
3612
  "definition": {
3371
3613
  "$type": "RegexToken",
3372
- "regex": "\\"[^\\"]*\\"|'[^']*'"
3614
+ "regex": "\\"(\\\\\\\\.|[^\\"\\\\\\\\])*\\"|'(\\\\\\\\.|[^'\\\\\\\\])*'"
3373
3615
  },
3374
3616
  "fragment": false,
3375
3617
  "hidden": false
@@ -3377,10 +3619,6 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
3377
3619
  {
3378
3620
  "$type": "TerminalRule",
3379
3621
  "name": "NUMBER",
3380
- "type": {
3381
- "$type": "ReturnType",
3382
- "name": "number"
3383
- },
3384
3622
  "definition": {
3385
3623
  "$type": "RegexToken",
3386
3624
  "regex": "[+-]?[0-9]+(\\\\.[0-9]+)?"
@@ -3429,19 +3667,19 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
3429
3667
  {
3430
3668
  "$type": "SimpleType",
3431
3669
  "typeRef": {
3432
- "$ref": "#/rules@37"
3670
+ "$ref": "#/rules@44"
3433
3671
  }
3434
3672
  },
3435
3673
  {
3436
3674
  "$type": "SimpleType",
3437
3675
  "typeRef": {
3438
- "$ref": "#/rules@31"
3676
+ "$ref": "#/rules@38"
3439
3677
  }
3440
3678
  },
3441
3679
  {
3442
3680
  "$type": "SimpleType",
3443
3681
  "typeRef": {
3444
- "$ref": "#/rules@35"
3682
+ "$ref": "#/rules@42"
3445
3683
  }
3446
3684
  }
3447
3685
  ]
@@ -3456,13 +3694,13 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
3456
3694
  {
3457
3695
  "$type": "SimpleType",
3458
3696
  "typeRef": {
3459
- "$ref": "#/rules@30"
3697
+ "$ref": "#/rules@37"
3460
3698
  }
3461
3699
  },
3462
3700
  {
3463
3701
  "$type": "SimpleType",
3464
3702
  "typeRef": {
3465
- "$ref": "#/rules@34"
3703
+ "$ref": "#/rules@41"
3466
3704
  }
3467
3705
  }
3468
3706
  ]