parser-lr 0.3.1 → 0.4.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.
@@ -7946,5 +7946,1073 @@
7946
7946
  "symbol": "sequence",
7947
7947
  "target": 129
7948
7948
  }
7949
+ ],
7950
+ "ast": [
7951
+ {
7952
+ "name": "grammar_file",
7953
+ "expression": {
7954
+ "kind": "sequence",
7955
+ "elements": [
7956
+ {
7957
+ "kind": "reference",
7958
+ "name": "name_decl"
7959
+ },
7960
+ {
7961
+ "kind": "repeat",
7962
+ "element": {
7963
+ "kind": "reference",
7964
+ "name": "section"
7965
+ }
7966
+ },
7967
+ {
7968
+ "kind": "reference",
7969
+ "name": "start_decl"
7970
+ },
7971
+ {
7972
+ "kind": "reference",
7973
+ "name": "grammar_section"
7974
+ },
7975
+ {
7976
+ "kind": "optional",
7977
+ "element": {
7978
+ "kind": "reference",
7979
+ "name": "ast_section"
7980
+ }
7981
+ },
7982
+ {
7983
+ "kind": "optional",
7984
+ "element": {
7985
+ "kind": "reference",
7986
+ "name": "transform_section"
7987
+ }
7988
+ }
7989
+ ]
7990
+ }
7991
+ },
7992
+ {
7993
+ "name": "name_decl",
7994
+ "expression": {
7995
+ "kind": "sequence",
7996
+ "elements": [
7997
+ {
7998
+ "kind": "reference",
7999
+ "name": "name_kw"
8000
+ },
8001
+ {
8002
+ "kind": "reference",
8003
+ "name": "grammar_name"
8004
+ },
8005
+ {
8006
+ "kind": "reference",
8007
+ "name": "semicolon"
8008
+ }
8009
+ ]
8010
+ }
8011
+ },
8012
+ {
8013
+ "name": "grammar_name",
8014
+ "expression": {
8015
+ "kind": "choice",
8016
+ "alternatives": [
8017
+ {
8018
+ "label": null,
8019
+ "expression": {
8020
+ "kind": "reference",
8021
+ "name": "identifier"
8022
+ }
8023
+ },
8024
+ {
8025
+ "label": null,
8026
+ "expression": {
8027
+ "kind": "reference",
8028
+ "name": "string_literal"
8029
+ }
8030
+ }
8031
+ ]
8032
+ }
8033
+ },
8034
+ {
8035
+ "name": "section",
8036
+ "expression": {
8037
+ "kind": "choice",
8038
+ "alternatives": [
8039
+ {
8040
+ "label": null,
8041
+ "expression": {
8042
+ "kind": "reference",
8043
+ "name": "token_section"
8044
+ }
8045
+ },
8046
+ {
8047
+ "label": null,
8048
+ "expression": {
8049
+ "kind": "reference",
8050
+ "name": "skip_section"
8051
+ }
8052
+ },
8053
+ {
8054
+ "label": null,
8055
+ "expression": {
8056
+ "kind": "reference",
8057
+ "name": "states_section"
8058
+ }
8059
+ }
8060
+ ]
8061
+ }
8062
+ },
8063
+ {
8064
+ "name": "token_section",
8065
+ "expression": {
8066
+ "kind": "sequence",
8067
+ "elements": [
8068
+ {
8069
+ "kind": "reference",
8070
+ "name": "tokens_kw"
8071
+ },
8072
+ {
8073
+ "kind": "reference",
8074
+ "name": "token_def"
8075
+ },
8076
+ {
8077
+ "kind": "repeat",
8078
+ "element": {
8079
+ "kind": "reference",
8080
+ "name": "token_def"
8081
+ }
8082
+ }
8083
+ ]
8084
+ }
8085
+ },
8086
+ {
8087
+ "name": "skip_section",
8088
+ "expression": {
8089
+ "kind": "sequence",
8090
+ "elements": [
8091
+ {
8092
+ "kind": "reference",
8093
+ "name": "skip_kw"
8094
+ },
8095
+ {
8096
+ "kind": "reference",
8097
+ "name": "token_def"
8098
+ },
8099
+ {
8100
+ "kind": "repeat",
8101
+ "element": {
8102
+ "kind": "reference",
8103
+ "name": "token_def"
8104
+ }
8105
+ }
8106
+ ]
8107
+ }
8108
+ },
8109
+ {
8110
+ "name": "states_section",
8111
+ "expression": {
8112
+ "kind": "sequence",
8113
+ "elements": [
8114
+ {
8115
+ "kind": "reference",
8116
+ "name": "states_kw"
8117
+ },
8118
+ {
8119
+ "kind": "reference",
8120
+ "name": "state_name"
8121
+ },
8122
+ {
8123
+ "kind": "repeat",
8124
+ "element": {
8125
+ "kind": "sequence",
8126
+ "elements": [
8127
+ {
8128
+ "kind": "reference",
8129
+ "name": "comma"
8130
+ },
8131
+ {
8132
+ "kind": "reference",
8133
+ "name": "state_name"
8134
+ }
8135
+ ]
8136
+ }
8137
+ },
8138
+ {
8139
+ "kind": "reference",
8140
+ "name": "semicolon"
8141
+ }
8142
+ ]
8143
+ }
8144
+ },
8145
+ {
8146
+ "name": "token_def",
8147
+ "expression": {
8148
+ "kind": "sequence",
8149
+ "elements": [
8150
+ {
8151
+ "kind": "reference",
8152
+ "name": "identifier"
8153
+ },
8154
+ {
8155
+ "kind": "reference",
8156
+ "name": "equal"
8157
+ },
8158
+ {
8159
+ "kind": "reference",
8160
+ "name": "regex_literal"
8161
+ },
8162
+ {
8163
+ "kind": "reference",
8164
+ "name": "semicolon"
8165
+ }
8166
+ ]
8167
+ }
8168
+ },
8169
+ {
8170
+ "name": "state_name",
8171
+ "expression": {
8172
+ "kind": "reference",
8173
+ "name": "identifier"
8174
+ }
8175
+ },
8176
+ {
8177
+ "name": "start_decl",
8178
+ "expression": {
8179
+ "kind": "sequence",
8180
+ "elements": [
8181
+ {
8182
+ "kind": "reference",
8183
+ "name": "start_kw"
8184
+ },
8185
+ {
8186
+ "kind": "reference",
8187
+ "name": "identifier"
8188
+ },
8189
+ {
8190
+ "kind": "reference",
8191
+ "name": "semicolon"
8192
+ }
8193
+ ]
8194
+ }
8195
+ },
8196
+ {
8197
+ "name": "grammar_section",
8198
+ "expression": {
8199
+ "kind": "sequence",
8200
+ "elements": [
8201
+ {
8202
+ "kind": "reference",
8203
+ "name": "grammar_kw"
8204
+ },
8205
+ {
8206
+ "kind": "reference",
8207
+ "name": "production"
8208
+ },
8209
+ {
8210
+ "kind": "repeat",
8211
+ "element": {
8212
+ "kind": "reference",
8213
+ "name": "production"
8214
+ }
8215
+ }
8216
+ ]
8217
+ }
8218
+ },
8219
+ {
8220
+ "name": "ast_section",
8221
+ "expression": {
8222
+ "kind": "sequence",
8223
+ "elements": [
8224
+ {
8225
+ "kind": "reference",
8226
+ "name": "ast_kw"
8227
+ },
8228
+ {
8229
+ "kind": "reference",
8230
+ "name": "ast_type"
8231
+ },
8232
+ {
8233
+ "kind": "repeat",
8234
+ "element": {
8235
+ "kind": "reference",
8236
+ "name": "ast_type"
8237
+ }
8238
+ }
8239
+ ]
8240
+ }
8241
+ },
8242
+ {
8243
+ "name": "transform_section",
8244
+ "expression": {
8245
+ "kind": "sequence",
8246
+ "elements": [
8247
+ {
8248
+ "kind": "reference",
8249
+ "name": "transform_kw"
8250
+ },
8251
+ {
8252
+ "kind": "reference",
8253
+ "name": "transform_rule"
8254
+ },
8255
+ {
8256
+ "kind": "repeat",
8257
+ "element": {
8258
+ "kind": "reference",
8259
+ "name": "transform_rule"
8260
+ }
8261
+ }
8262
+ ]
8263
+ }
8264
+ },
8265
+ {
8266
+ "name": "production",
8267
+ "expression": {
8268
+ "kind": "sequence",
8269
+ "elements": [
8270
+ {
8271
+ "kind": "reference",
8272
+ "name": "identifier"
8273
+ },
8274
+ {
8275
+ "kind": "reference",
8276
+ "name": "equal"
8277
+ },
8278
+ {
8279
+ "kind": "reference",
8280
+ "name": "expression"
8281
+ },
8282
+ {
8283
+ "kind": "reference",
8284
+ "name": "semicolon"
8285
+ }
8286
+ ]
8287
+ }
8288
+ },
8289
+ {
8290
+ "name": "ast_type",
8291
+ "expression": {
8292
+ "kind": "sequence",
8293
+ "elements": [
8294
+ {
8295
+ "kind": "reference",
8296
+ "name": "identifier"
8297
+ },
8298
+ {
8299
+ "kind": "reference",
8300
+ "name": "equal"
8301
+ },
8302
+ {
8303
+ "kind": "reference",
8304
+ "name": "expression"
8305
+ },
8306
+ {
8307
+ "kind": "reference",
8308
+ "name": "semicolon"
8309
+ }
8310
+ ]
8311
+ }
8312
+ },
8313
+ {
8314
+ "name": "transform_rule",
8315
+ "expression": {
8316
+ "kind": "sequence",
8317
+ "elements": [
8318
+ {
8319
+ "kind": "reference",
8320
+ "name": "identifier"
8321
+ },
8322
+ {
8323
+ "kind": "reference",
8324
+ "name": "arrow"
8325
+ },
8326
+ {
8327
+ "kind": "reference",
8328
+ "name": "labeled_transform"
8329
+ },
8330
+ {
8331
+ "kind": "repeat",
8332
+ "element": {
8333
+ "kind": "sequence",
8334
+ "elements": [
8335
+ {
8336
+ "kind": "reference",
8337
+ "name": "bar"
8338
+ },
8339
+ {
8340
+ "kind": "reference",
8341
+ "name": "labeled_transform"
8342
+ }
8343
+ ]
8344
+ }
8345
+ },
8346
+ {
8347
+ "kind": "reference",
8348
+ "name": "semicolon"
8349
+ }
8350
+ ]
8351
+ }
8352
+ },
8353
+ {
8354
+ "name": "labeled_transform",
8355
+ "expression": {
8356
+ "kind": "sequence",
8357
+ "elements": [
8358
+ {
8359
+ "kind": "reference",
8360
+ "name": "hash"
8361
+ },
8362
+ {
8363
+ "kind": "reference",
8364
+ "name": "identifier"
8365
+ },
8366
+ {
8367
+ "kind": "reference",
8368
+ "name": "transform_expr"
8369
+ }
8370
+ ]
8371
+ }
8372
+ },
8373
+ {
8374
+ "name": "transform_expr",
8375
+ "expression": {
8376
+ "kind": "choice",
8377
+ "alternatives": [
8378
+ {
8379
+ "label": null,
8380
+ "expression": {
8381
+ "kind": "reference",
8382
+ "name": "drop_kw"
8383
+ }
8384
+ },
8385
+ {
8386
+ "label": null,
8387
+ "expression": {
8388
+ "kind": "reference",
8389
+ "name": "pass_expr"
8390
+ }
8391
+ },
8392
+ {
8393
+ "label": null,
8394
+ "expression": {
8395
+ "kind": "reference",
8396
+ "name": "fold_left_expr"
8397
+ }
8398
+ },
8399
+ {
8400
+ "label": null,
8401
+ "expression": {
8402
+ "kind": "reference",
8403
+ "name": "fold_right_expr"
8404
+ }
8405
+ },
8406
+ {
8407
+ "label": null,
8408
+ "expression": {
8409
+ "kind": "reference",
8410
+ "name": "flatten_expr"
8411
+ }
8412
+ },
8413
+ {
8414
+ "label": null,
8415
+ "expression": {
8416
+ "kind": "reference",
8417
+ "name": "build_expr"
8418
+ }
8419
+ }
8420
+ ]
8421
+ }
8422
+ },
8423
+ {
8424
+ "name": "pass_expr",
8425
+ "expression": {
8426
+ "kind": "sequence",
8427
+ "elements": [
8428
+ {
8429
+ "kind": "reference",
8430
+ "name": "pass_kw"
8431
+ },
8432
+ {
8433
+ "kind": "reference",
8434
+ "name": "lpar"
8435
+ },
8436
+ {
8437
+ "kind": "reference",
8438
+ "name": "reference"
8439
+ },
8440
+ {
8441
+ "kind": "reference",
8442
+ "name": "rpar"
8443
+ }
8444
+ ]
8445
+ }
8446
+ },
8447
+ {
8448
+ "name": "fold_left_expr",
8449
+ "expression": {
8450
+ "kind": "sequence",
8451
+ "elements": [
8452
+ {
8453
+ "kind": "reference",
8454
+ "name": "fold_left_kw"
8455
+ },
8456
+ {
8457
+ "kind": "reference",
8458
+ "name": "lpar"
8459
+ },
8460
+ {
8461
+ "kind": "reference",
8462
+ "name": "build_target"
8463
+ },
8464
+ {
8465
+ "kind": "reference",
8466
+ "name": "comma"
8467
+ },
8468
+ {
8469
+ "kind": "reference",
8470
+ "name": "reference_list"
8471
+ },
8472
+ {
8473
+ "kind": "reference",
8474
+ "name": "rpar"
8475
+ }
8476
+ ]
8477
+ }
8478
+ },
8479
+ {
8480
+ "name": "fold_right_expr",
8481
+ "expression": {
8482
+ "kind": "sequence",
8483
+ "elements": [
8484
+ {
8485
+ "kind": "reference",
8486
+ "name": "fold_right_kw"
8487
+ },
8488
+ {
8489
+ "kind": "reference",
8490
+ "name": "lpar"
8491
+ },
8492
+ {
8493
+ "kind": "reference",
8494
+ "name": "build_target"
8495
+ },
8496
+ {
8497
+ "kind": "reference",
8498
+ "name": "comma"
8499
+ },
8500
+ {
8501
+ "kind": "reference",
8502
+ "name": "reference_list"
8503
+ },
8504
+ {
8505
+ "kind": "reference",
8506
+ "name": "rpar"
8507
+ }
8508
+ ]
8509
+ }
8510
+ },
8511
+ {
8512
+ "name": "flatten_expr",
8513
+ "expression": {
8514
+ "kind": "sequence",
8515
+ "elements": [
8516
+ {
8517
+ "kind": "reference",
8518
+ "name": "flatten_kw"
8519
+ },
8520
+ {
8521
+ "kind": "reference",
8522
+ "name": "lpar"
8523
+ },
8524
+ {
8525
+ "kind": "reference",
8526
+ "name": "build_target"
8527
+ },
8528
+ {
8529
+ "kind": "reference",
8530
+ "name": "comma"
8531
+ },
8532
+ {
8533
+ "kind": "reference",
8534
+ "name": "reference"
8535
+ },
8536
+ {
8537
+ "kind": "reference",
8538
+ "name": "comma"
8539
+ },
8540
+ {
8541
+ "kind": "reference",
8542
+ "name": "reference"
8543
+ },
8544
+ {
8545
+ "kind": "reference",
8546
+ "name": "rpar"
8547
+ }
8548
+ ]
8549
+ }
8550
+ },
8551
+ {
8552
+ "name": "build_expr",
8553
+ "expression": {
8554
+ "kind": "sequence",
8555
+ "elements": [
8556
+ {
8557
+ "kind": "reference",
8558
+ "name": "build_target"
8559
+ },
8560
+ {
8561
+ "kind": "optional",
8562
+ "element": {
8563
+ "kind": "sequence",
8564
+ "elements": [
8565
+ {
8566
+ "kind": "reference",
8567
+ "name": "lpar"
8568
+ },
8569
+ {
8570
+ "kind": "reference",
8571
+ "name": "reference_list"
8572
+ },
8573
+ {
8574
+ "kind": "reference",
8575
+ "name": "rpar"
8576
+ }
8577
+ ]
8578
+ }
8579
+ }
8580
+ ]
8581
+ }
8582
+ },
8583
+ {
8584
+ "name": "build_target",
8585
+ "expression": {
8586
+ "kind": "sequence",
8587
+ "elements": [
8588
+ {
8589
+ "kind": "reference",
8590
+ "name": "identifier"
8591
+ },
8592
+ {
8593
+ "kind": "reference",
8594
+ "name": "dot"
8595
+ },
8596
+ {
8597
+ "kind": "reference",
8598
+ "name": "hash"
8599
+ },
8600
+ {
8601
+ "kind": "reference",
8602
+ "name": "identifier"
8603
+ }
8604
+ ]
8605
+ }
8606
+ },
8607
+ {
8608
+ "name": "reference_list",
8609
+ "expression": {
8610
+ "kind": "sequence",
8611
+ "elements": [
8612
+ {
8613
+ "kind": "reference",
8614
+ "name": "reference"
8615
+ },
8616
+ {
8617
+ "kind": "repeat",
8618
+ "element": {
8619
+ "kind": "sequence",
8620
+ "elements": [
8621
+ {
8622
+ "kind": "reference",
8623
+ "name": "comma"
8624
+ },
8625
+ {
8626
+ "kind": "reference",
8627
+ "name": "reference"
8628
+ }
8629
+ ]
8630
+ }
8631
+ }
8632
+ ]
8633
+ }
8634
+ },
8635
+ {
8636
+ "name": "reference",
8637
+ "expression": {
8638
+ "kind": "reference",
8639
+ "name": "identifier"
8640
+ }
8641
+ },
8642
+ {
8643
+ "name": "expression",
8644
+ "expression": {
8645
+ "kind": "reference",
8646
+ "name": "choice"
8647
+ }
8648
+ },
8649
+ {
8650
+ "name": "choice",
8651
+ "expression": {
8652
+ "kind": "sequence",
8653
+ "elements": [
8654
+ {
8655
+ "kind": "reference",
8656
+ "name": "alternative"
8657
+ },
8658
+ {
8659
+ "kind": "repeat",
8660
+ "element": {
8661
+ "kind": "sequence",
8662
+ "elements": [
8663
+ {
8664
+ "kind": "reference",
8665
+ "name": "bar"
8666
+ },
8667
+ {
8668
+ "kind": "reference",
8669
+ "name": "alternative"
8670
+ }
8671
+ ]
8672
+ }
8673
+ }
8674
+ ]
8675
+ }
8676
+ },
8677
+ {
8678
+ "name": "alternative",
8679
+ "expression": {
8680
+ "kind": "reference",
8681
+ "name": "labeled_alternative"
8682
+ }
8683
+ },
8684
+ {
8685
+ "name": "labeled_alternative",
8686
+ "expression": {
8687
+ "kind": "sequence",
8688
+ "elements": [
8689
+ {
8690
+ "kind": "optional",
8691
+ "element": {
8692
+ "kind": "sequence",
8693
+ "elements": [
8694
+ {
8695
+ "kind": "reference",
8696
+ "name": "hash"
8697
+ },
8698
+ {
8699
+ "kind": "reference",
8700
+ "name": "identifier"
8701
+ }
8702
+ ]
8703
+ }
8704
+ },
8705
+ {
8706
+ "kind": "reference",
8707
+ "name": "sequence"
8708
+ }
8709
+ ]
8710
+ }
8711
+ },
8712
+ {
8713
+ "name": "sequence",
8714
+ "expression": {
8715
+ "kind": "sequence",
8716
+ "elements": [
8717
+ {
8718
+ "kind": "reference",
8719
+ "name": "factor"
8720
+ },
8721
+ {
8722
+ "kind": "repeat",
8723
+ "element": {
8724
+ "kind": "reference",
8725
+ "name": "factor"
8726
+ }
8727
+ }
8728
+ ]
8729
+ }
8730
+ },
8731
+ {
8732
+ "name": "factor",
8733
+ "expression": {
8734
+ "kind": "choice",
8735
+ "alternatives": [
8736
+ {
8737
+ "label": null,
8738
+ "expression": {
8739
+ "kind": "reference",
8740
+ "name": "bracketed"
8741
+ }
8742
+ },
8743
+ {
8744
+ "label": null,
8745
+ "expression": {
8746
+ "kind": "reference",
8747
+ "name": "repeat"
8748
+ }
8749
+ },
8750
+ {
8751
+ "label": null,
8752
+ "expression": {
8753
+ "kind": "reference",
8754
+ "name": "group"
8755
+ }
8756
+ },
8757
+ {
8758
+ "label": null,
8759
+ "expression": {
8760
+ "kind": "reference",
8761
+ "name": "primary"
8762
+ }
8763
+ }
8764
+ ]
8765
+ }
8766
+ },
8767
+ {
8768
+ "name": "bracketed",
8769
+ "expression": {
8770
+ "kind": "sequence",
8771
+ "elements": [
8772
+ {
8773
+ "kind": "reference",
8774
+ "name": "lbracket"
8775
+ },
8776
+ {
8777
+ "kind": "reference",
8778
+ "name": "expression"
8779
+ },
8780
+ {
8781
+ "kind": "reference",
8782
+ "name": "rbracket"
8783
+ },
8784
+ {
8785
+ "kind": "optional",
8786
+ "element": {
8787
+ "kind": "sequence",
8788
+ "elements": [
8789
+ {
8790
+ "kind": "reference",
8791
+ "name": "colon"
8792
+ },
8793
+ {
8794
+ "kind": "reference",
8795
+ "name": "identifier"
8796
+ }
8797
+ ]
8798
+ }
8799
+ }
8800
+ ]
8801
+ }
8802
+ },
8803
+ {
8804
+ "name": "repeat",
8805
+ "expression": {
8806
+ "kind": "sequence",
8807
+ "elements": [
8808
+ {
8809
+ "kind": "reference",
8810
+ "name": "lbrace"
8811
+ },
8812
+ {
8813
+ "kind": "reference",
8814
+ "name": "expression"
8815
+ },
8816
+ {
8817
+ "kind": "reference",
8818
+ "name": "rbrace"
8819
+ }
8820
+ ]
8821
+ }
8822
+ },
8823
+ {
8824
+ "name": "group",
8825
+ "expression": {
8826
+ "kind": "sequence",
8827
+ "elements": [
8828
+ {
8829
+ "kind": "reference",
8830
+ "name": "lpar"
8831
+ },
8832
+ {
8833
+ "kind": "reference",
8834
+ "name": "expression"
8835
+ },
8836
+ {
8837
+ "kind": "reference",
8838
+ "name": "rpar"
8839
+ }
8840
+ ]
8841
+ }
8842
+ },
8843
+ {
8844
+ "name": "primary",
8845
+ "expression": {
8846
+ "kind": "choice",
8847
+ "alternatives": [
8848
+ {
8849
+ "label": null,
8850
+ "expression": {
8851
+ "kind": "reference",
8852
+ "name": "string_literal"
8853
+ }
8854
+ },
8855
+ {
8856
+ "label": null,
8857
+ "expression": {
8858
+ "kind": "reference",
8859
+ "name": "identifier"
8860
+ }
8861
+ }
8862
+ ]
8863
+ }
8864
+ }
8865
+ ],
8866
+ "transform": [
8867
+ {
8868
+ "production": "grammar_file$repeat_0",
8869
+ "alternatives": [
8870
+ {
8871
+ "label": "main",
8872
+ "expression": {
8873
+ "kind": "flatten",
8874
+ "typeName": "grammar_file",
8875
+ "variant": "sections",
8876
+ "head": "section",
8877
+ "tail": "grammar_file$repeat_0"
8878
+ }
8879
+ }
8880
+ ]
8881
+ },
8882
+ {
8883
+ "production": "token_section$repeat_1",
8884
+ "alternatives": [
8885
+ {
8886
+ "label": "main",
8887
+ "expression": {
8888
+ "kind": "flatten",
8889
+ "typeName": "token_section",
8890
+ "variant": "definitions",
8891
+ "head": "token_def",
8892
+ "tail": "token_section$repeat_1"
8893
+ }
8894
+ }
8895
+ ]
8896
+ },
8897
+ {
8898
+ "production": "skip_section$repeat_2",
8899
+ "alternatives": [
8900
+ {
8901
+ "label": "main",
8902
+ "expression": {
8903
+ "kind": "flatten",
8904
+ "typeName": "skip_section",
8905
+ "variant": "definitions",
8906
+ "head": "token_def",
8907
+ "tail": "skip_section$repeat_2"
8908
+ }
8909
+ }
8910
+ ]
8911
+ },
8912
+ {
8913
+ "production": "grammar_section$repeat_4",
8914
+ "alternatives": [
8915
+ {
8916
+ "label": "main",
8917
+ "expression": {
8918
+ "kind": "flatten",
8919
+ "typeName": "grammar_section",
8920
+ "variant": "productions",
8921
+ "head": "production",
8922
+ "tail": "grammar_section$repeat_4"
8923
+ }
8924
+ }
8925
+ ]
8926
+ },
8927
+ {
8928
+ "production": "ast_section$repeat_5",
8929
+ "alternatives": [
8930
+ {
8931
+ "label": "main",
8932
+ "expression": {
8933
+ "kind": "flatten",
8934
+ "typeName": "ast_section",
8935
+ "variant": "types",
8936
+ "head": "ast_type",
8937
+ "tail": "ast_section$repeat_5"
8938
+ }
8939
+ }
8940
+ ]
8941
+ },
8942
+ {
8943
+ "production": "transform_section$repeat_6",
8944
+ "alternatives": [
8945
+ {
8946
+ "label": "main",
8947
+ "expression": {
8948
+ "kind": "flatten",
8949
+ "typeName": "transform_section",
8950
+ "variant": "rules",
8951
+ "head": "transform_rule",
8952
+ "tail": "transform_section$repeat_6"
8953
+ }
8954
+ }
8955
+ ]
8956
+ },
8957
+ {
8958
+ "production": "transform_rule$repeat_7",
8959
+ "alternatives": [
8960
+ {
8961
+ "label": "main",
8962
+ "expression": {
8963
+ "kind": "flatten",
8964
+ "typeName": "transform_rule",
8965
+ "variant": "alternatives",
8966
+ "head": "labeled_transform",
8967
+ "tail": "transform_rule$repeat_7"
8968
+ }
8969
+ }
8970
+ ]
8971
+ },
8972
+ {
8973
+ "production": "reference_list$repeat_8",
8974
+ "alternatives": [
8975
+ {
8976
+ "label": "main",
8977
+ "expression": {
8978
+ "kind": "flatten",
8979
+ "typeName": "reference_list",
8980
+ "variant": "references",
8981
+ "head": "reference",
8982
+ "tail": "reference_list$repeat_8"
8983
+ }
8984
+ }
8985
+ ]
8986
+ },
8987
+ {
8988
+ "production": "choice$repeat_9",
8989
+ "alternatives": [
8990
+ {
8991
+ "label": "main",
8992
+ "expression": {
8993
+ "kind": "flatten",
8994
+ "typeName": "choice",
8995
+ "variant": "alternatives",
8996
+ "head": "alternative",
8997
+ "tail": "choice$repeat_9"
8998
+ }
8999
+ }
9000
+ ]
9001
+ },
9002
+ {
9003
+ "production": "sequence$repeat_10",
9004
+ "alternatives": [
9005
+ {
9006
+ "label": "main",
9007
+ "expression": {
9008
+ "kind": "flatten",
9009
+ "typeName": "sequence",
9010
+ "variant": "factors",
9011
+ "head": "factor",
9012
+ "tail": "sequence$repeat_10"
9013
+ }
9014
+ }
9015
+ ]
9016
+ }
7949
9017
  ]
7950
9018
  }