lrama 0.6.5 → 0.6.6

Sign up to get free protection for your applications and to get access to all the features.
data/lib/lrama/parser.rb CHANGED
@@ -658,7 +658,7 @@ end
658
658
  module Lrama
659
659
  class Parser < Racc::Parser
660
660
 
661
- module_eval(<<'...end parser.y/module_eval...', 'parser.y', 529)
661
+ module_eval(<<'...end parser.y/module_eval...', 'parser.y', 536)
662
662
 
663
663
  include Lrama::Report::Duration
664
664
 
@@ -732,314 +732,322 @@ end
732
732
  ##### State transition tables begin ###
733
733
 
734
734
  racc_action_table = [
735
- 96, 50, 97, 156, 155, 78, 50, 50, 156, 199,
736
- 78, 78, 50, 50, 199, 49, 78, 158, 69, 6,
737
- 3, 7, 158, 200, 210, 154, 8, 50, 200, 49,
738
- 40, 174, 175, 176, 47, 50, 46, 49, 53, 78,
739
- 74, 50, 53, 49, 159, 53, 81, 98, 56, 159,
740
- 201, 174, 175, 176, 94, 201, 22, 24, 25, 26,
735
+ 98, 51, 99, 163, 88, 79, 51, 51, 179, 163,
736
+ 79, 79, 51, 162, 179, 156, 79, 165, 157, 3,
737
+ 8, 203, 180, 165, 186, 187, 188, 96, 180, 186,
738
+ 187, 188, 41, 48, 51, 161, 50, 47, 51, 70,
739
+ 50, 54, 89, 82, 51, 166, 50, 54, 100, 82,
740
+ 181, 166, 216, 54, 57, 217, 181, 23, 25, 26,
741
741
  27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
742
- 37, 46, 50, 50, 49, 49, 91, 81, 81, 50,
743
- 50, 49, 49, 50, 81, 49, 57, 78, 184, 58,
744
- 59, 22, 24, 25, 26, 27, 28, 29, 30, 31,
745
- 32, 33, 34, 35, 36, 37, 9, 50, 60, 49,
746
- 13, 14, 15, 16, 17, 18, 61, 62, 19, 20,
747
- 21, 22, 24, 25, 26, 27, 28, 29, 30, 31,
748
- 32, 33, 34, 35, 36, 37, 38, 50, 50, 49,
749
- 49, 78, 184, 50, 50, 49, 49, 78, 184, 50,
750
- 50, 49, 49, 78, 184, 50, 50, 49, 49, 78,
751
- 184, 50, 50, 49, 49, 78, 184, 50, 50, 49,
752
- 49, 78, 78, 50, 50, 49, 49, 78, 78, 50,
753
- 50, 49, 49, 78, 78, 50, 50, 190, 49, 78,
754
- 78, 50, 50, 190, 49, 78, 78, 50, 50, 190,
755
- 49, 78, 50, 50, 49, 49, 152, 203, 153, 204,
756
- 174, 175, 176, 219, 221, 204, 204, 63, 64, 65,
757
- 66, 87, 88, 92, 94, 99, 99, 99, 101, 107,
758
- 111, 112, 115, 115, 115, 115, 118, 121, 122, 124,
759
- 126, 127, 128, 129, 130, 133, 137, 138, 139, 142,
760
- 143, 144, 146, 161, 163, 164, 165, 166, 167, 168,
761
- 169, 142, 171, 179, 180, 189, 194, 195, 197, 202,
762
- 189, 94, 194, 216, 218, 94, 194, 224, 94 ]
742
+ 37, 38, 47, 6, 51, 7, 50, 93, 79, 75,
743
+ 51, 51, 50, 50, 58, 82, 82, 51, 51, 50,
744
+ 50, 79, 23, 25, 26, 27, 28, 29, 30, 31,
745
+ 32, 33, 34, 35, 36, 37, 38, 9, 51, 59,
746
+ 50, 14, 15, 16, 17, 18, 19, 60, 61, 20,
747
+ 21, 22, 23, 25, 26, 27, 28, 29, 30, 31,
748
+ 32, 33, 34, 35, 36, 37, 38, 39, 51, 51,
749
+ 50, 50, 79, 196, 51, 51, 50, 50, 79, 196,
750
+ 51, 51, 50, 50, 79, 196, 51, 51, 50, 50,
751
+ 79, 196, 51, 51, 50, 50, 79, 196, 51, 51,
752
+ 50, 50, 79, 196, 51, 51, 50, 50, 79, 79,
753
+ 51, 51, 50, 50, 79, 79, 51, 51, 50, 50,
754
+ 79, 79, 51, 51, 206, 206, 79, 79, 51, 51,
755
+ 206, 50, 79, 79, 220, 227, 62, 217, 217, 51,
756
+ 51, 50, 50, 51, 63, 50, 186, 187, 188, 64,
757
+ 65, 66, 67, 90, 94, 96, 101, 101, 101, 103,
758
+ 109, 113, 114, 117, 117, 117, 117, 120, 47, 124,
759
+ 125, 127, 129, 130, 131, 132, 133, 136, 140, 141,
760
+ 142, 143, 146, 147, 148, 150, 160, 168, 170, 171,
761
+ 172, 173, 174, 175, 176, 177, 146, 183, 191, 192,
762
+ 160, 160, 96, 210, 211, 177, 214, 215, 210, 225,
763
+ 226, 96, 96, 210 ]
763
764
 
764
765
  racc_action_check = [
765
- 48, 141, 48, 141, 140, 141, 170, 188, 170, 188,
766
- 170, 188, 207, 32, 207, 32, 207, 141, 32, 2,
767
- 1, 2, 170, 188, 199, 140, 3, 14, 207, 14,
768
- 7, 199, 199, 199, 13, 33, 9, 33, 15, 33,
769
- 33, 34, 16, 34, 141, 17, 34, 48, 18, 170,
770
- 188, 157, 157, 157, 157, 207, 9, 9, 9, 9,
766
+ 49, 145, 49, 145, 39, 145, 159, 182, 159, 182,
767
+ 159, 182, 200, 144, 200, 139, 200, 145, 139, 1,
768
+ 3, 179, 159, 182, 164, 164, 164, 164, 200, 179,
769
+ 179, 179, 7, 14, 33, 144, 33, 9, 35, 33,
770
+ 35, 16, 39, 35, 36, 145, 36, 17, 49, 36,
771
+ 159, 182, 207, 18, 19, 207, 200, 9, 9, 9,
771
772
  9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
772
- 9, 41, 35, 36, 35, 36, 41, 35, 36, 37,
773
- 68, 37, 68, 165, 37, 165, 19, 165, 165, 22,
774
- 24, 41, 41, 41, 41, 41, 41, 41, 41, 41,
775
- 41, 41, 41, 41, 41, 41, 4, 69, 25, 69,
776
- 4, 4, 4, 4, 4, 4, 26, 27, 4, 4,
773
+ 9, 9, 42, 2, 34, 2, 34, 42, 34, 34,
774
+ 37, 38, 37, 38, 20, 37, 38, 74, 15, 74,
775
+ 15, 74, 42, 42, 42, 42, 42, 42, 42, 42,
776
+ 42, 42, 42, 42, 42, 42, 42, 4, 69, 23,
777
+ 69, 4, 4, 4, 4, 4, 4, 25, 26, 4,
777
778
  4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
778
- 4, 4, 4, 4, 4, 4, 4, 166, 80, 166,
779
- 80, 166, 166, 167, 81, 167, 81, 167, 167, 181,
780
- 107, 181, 107, 181, 181, 185, 109, 185, 109, 185,
781
- 185, 186, 115, 186, 115, 186, 186, 73, 74, 73,
782
- 74, 73, 74, 112, 114, 112, 114, 112, 114, 134,
783
- 159, 134, 159, 134, 159, 171, 201, 171, 201, 171,
784
- 201, 202, 204, 202, 204, 202, 204, 210, 117, 210,
785
- 117, 210, 131, 135, 131, 135, 136, 191, 136, 191,
786
- 192, 192, 192, 213, 217, 213, 217, 28, 29, 30,
787
- 31, 38, 39, 44, 45, 52, 54, 55, 56, 67,
788
- 71, 72, 79, 84, 85, 86, 87, 93, 94, 100,
789
- 102, 103, 104, 105, 106, 110, 118, 119, 120, 121,
790
- 122, 123, 125, 145, 147, 148, 149, 150, 151, 152,
791
- 153, 154, 156, 160, 162, 168, 173, 177, 187, 190,
792
- 197, 198, 203, 206, 211, 216, 220, 222, 224 ]
779
+ 4, 4, 4, 4, 4, 4, 4, 4, 172, 70,
780
+ 172, 70, 172, 172, 173, 81, 173, 81, 173, 173,
781
+ 174, 82, 174, 82, 174, 174, 193, 109, 193, 109,
782
+ 193, 193, 197, 111, 197, 111, 197, 197, 198, 117,
783
+ 198, 117, 198, 198, 75, 114, 75, 114, 75, 114,
784
+ 116, 137, 116, 137, 116, 137, 166, 181, 166, 181,
785
+ 166, 181, 183, 203, 183, 203, 183, 203, 215, 217,
786
+ 215, 217, 215, 217, 213, 222, 27, 213, 222, 119,
787
+ 134, 119, 134, 138, 28, 138, 208, 208, 208, 29,
788
+ 30, 31, 32, 40, 45, 46, 53, 55, 56, 57,
789
+ 68, 72, 73, 80, 85, 86, 87, 88, 89, 95,
790
+ 96, 102, 104, 105, 106, 107, 108, 112, 120, 121,
791
+ 122, 123, 124, 125, 126, 128, 141, 149, 151, 152,
792
+ 153, 154, 155, 156, 157, 158, 161, 163, 167, 169,
793
+ 175, 177, 178, 185, 189, 199, 204, 206, 216, 219,
794
+ 221, 225, 226, 228 ]
793
795
 
794
796
  racc_action_pointer = [
795
- nil, 20, 9, 26, 97, nil, nil, 23, nil, 32,
796
- nil, nil, nil, 28, 24, 19, 23, 26, 43, 67,
797
- nil, nil, 70, nil, 71, 89, 97, 112, 212, 213,
798
- 214, 215, 10, 32, 38, 69, 70, 76, 216, 220,
799
- nil, 67, nil, nil, 200, 174, nil, nil, -5, nil,
800
- nil, nil, 206, nil, 207, 208, 209, nil, nil, nil,
801
- nil, nil, nil, nil, nil, nil, nil, 221, 77, 104,
802
- nil, 224, 223, 164, 165, nil, nil, nil, nil, 224,
803
- 135, 141, nil, nil, 225, 226, 227, 196, nil, nil,
804
- nil, nil, nil, 195, 233, nil, nil, nil, nil, nil,
805
- 237, nil, 238, 239, 240, 241, 242, 147, nil, 153,
806
- 238, nil, 170, nil, 171, 159, nil, 195, 241, 236,
807
- 246, 204, 199, 249, nil, 250, nil, nil, nil, nil,
808
- nil, 199, nil, nil, 176, 200, 165, nil, nil, nil,
809
- -19, -2, nil, nil, nil, 233, nil, 234, 235, 236,
810
- 237, 238, 217, 255, 216, nil, 222, 4, nil, 177,
811
- 243, nil, 244, nil, nil, 80, 134, 140, 220, nil,
812
- 3, 182, nil, 258, nil, nil, nil, 265, nil, nil,
813
- nil, 146, nil, nil, nil, 152, 158, 224, 4, nil,
814
- 229, 166, 163, nil, nil, nil, nil, 225, 221, -16,
815
- nil, 183, 188, 264, 189, nil, 253, 9, nil, nil,
816
- 194, 272, nil, 172, nil, nil, 225, 173, nil, nil,
817
- 268, nil, 257, nil, 228, nil ]
797
+ nil, 19, 63, 20, 98, nil, nil, 25, nil, 33,
798
+ nil, nil, nil, nil, 27, 85, 22, 28, 34, 49,
799
+ 65, nil, nil, 90, nil, 98, 99, 187, 209, 214,
800
+ 215, 216, 217, 31, 71, 35, 41, 77, 78, -1,
801
+ 221, nil, 68, nil, nil, 201, 174, nil, nil, -5,
802
+ nil, nil, nil, 207, nil, 208, 209, 210, nil, nil,
803
+ nil, nil, nil, nil, nil, nil, nil, nil, 222, 105,
804
+ 136, nil, 225, 224, 84, 171, nil, nil, nil, nil,
805
+ 225, 142, 148, nil, nil, 226, 227, 228, 197, 234,
806
+ nil, nil, nil, nil, nil, 197, 235, nil, nil, nil,
807
+ nil, nil, 239, nil, 240, 241, 242, 243, 244, 154,
808
+ nil, 160, 240, nil, 172, nil, 177, 166, nil, 206,
809
+ 243, 207, 239, 249, 206, 201, 252, nil, 253, nil,
810
+ nil, nil, nil, nil, 207, nil, nil, 178, 210, -26,
811
+ nil, 210, nil, nil, -10, -2, nil, nil, nil, 237,
812
+ nil, 238, 239, 240, 241, 242, 221, 259, 220, 3,
813
+ nil, 220, nil, 227, -24, nil, 183, 248, nil, 249,
814
+ nil, nil, 135, 141, 147, 224, nil, 225, 221, -19,
815
+ nil, 184, 4, 189, nil, 265, nil, nil, nil, 272,
816
+ nil, nil, nil, 153, nil, nil, nil, 159, 165, 230,
817
+ 9, nil, nil, 190, 274, nil, 237, 11, 168, nil,
818
+ nil, nil, nil, 163, nil, 195, 270, 196, nil, 259,
819
+ nil, 260, 164, nil, nil, 230, 231, nil, 275, nil,
820
+ nil ]
818
821
 
819
822
  racc_action_default = [
820
- -2, -136, -8, -136, -136, -3, -4, -136, 226, -136,
821
- -9, -10, -11, -136, -136, -136, -136, -136, -136, -136,
822
- -23, -24, -136, -28, -136, -136, -136, -136, -136, -136,
823
- -136, -136, -136, -136, -136, -136, -136, -136, -136, -136,
824
- -7, -121, -94, -96, -136, -118, -120, -12, -125, -92,
825
- -93, -124, -14, -83, -15, -16, -136, -20, -25, -29,
826
- -32, -35, -38, -39, -40, -41, -42, -43, -49, -136,
827
- -52, -69, -44, -73, -136, -76, -78, -79, -133, -45,
828
- -86, -136, -89, -91, -46, -47, -48, -136, -5, -1,
829
- -95, -122, -97, -136, -136, -13, -126, -127, -128, -80,
830
- -136, -17, -136, -136, -136, -136, -136, -136, -53, -50,
831
- -71, -70, -136, -77, -74, -136, -90, -87, -136, -136,
832
- -136, -102, -136, -136, -84, -136, -21, -26, -30, -33,
833
- -36, -51, -54, -72, -75, -88, -136, -56, -6, -123,
834
- -98, -99, -103, -119, -81, -136, -18, -136, -136, -136,
835
- -136, -136, -136, -136, -102, -101, -92, -118, -107, -136,
836
- -136, -85, -136, -22, -27, -136, -136, -136, -60, -57,
837
- -100, -136, -104, -134, -111, -112, -113, -136, -110, -82,
838
- -19, -31, -129, -131, -132, -34, -37, -55, -58, -61,
839
- -92, -136, -114, -105, -135, -108, -130, -60, -118, -92,
840
- -65, -136, -136, -134, -136, -116, -136, -59, -62, -63,
841
- -136, -136, -68, -136, -106, -115, -118, -136, -66, -117,
842
- -134, -64, -136, -109, -118, -67 ]
823
+ -2, -138, -8, -138, -138, -3, -4, -138, 231, -138,
824
+ -9, -10, -11, -12, -138, -138, -138, -138, -138, -138,
825
+ -138, -24, -25, -138, -29, -138, -138, -138, -138, -138,
826
+ -138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
827
+ -138, -7, -123, -96, -98, -138, -120, -122, -13, -127,
828
+ -94, -95, -126, -15, -85, -16, -17, -138, -21, -26,
829
+ -30, -33, -36, -39, -40, -41, -42, -43, -44, -50,
830
+ -138, -53, -71, -45, -75, -138, -78, -80, -81, -135,
831
+ -46, -88, -138, -91, -93, -47, -48, -49, -138, -138,
832
+ -5, -1, -97, -124, -99, -138, -138, -14, -128, -129,
833
+ -130, -82, -138, -18, -138, -138, -138, -138, -138, -138,
834
+ -54, -51, -73, -72, -138, -79, -76, -138, -92, -89,
835
+ -138, -138, -138, -138, -104, -138, -138, -86, -138, -22,
836
+ -27, -31, -34, -37, -52, -55, -74, -77, -90, -138,
837
+ -58, -62, -6, -125, -100, -101, -105, -121, -83, -138,
838
+ -19, -138, -138, -138, -138, -138, -138, -138, -57, -60,
839
+ -63, -104, -103, -94, -120, -109, -138, -138, -87, -138,
840
+ -23, -28, -138, -138, -138, -62, -59, -62, -120, -94,
841
+ -67, -138, -102, -138, -106, -136, -113, -114, -115, -138,
842
+ -112, -84, -20, -32, -131, -133, -134, -35, -38, -56,
843
+ -61, -64, -65, -138, -138, -70, -94, -138, -116, -107,
844
+ -137, -110, -132, -138, -68, -138, -136, -138, -118, -138,
845
+ -66, -138, -138, -108, -117, -120, -120, -119, -136, -69,
846
+ -111 ]
843
847
 
844
848
  racc_goto_table = [
845
- 93, 75, 51, 68, 73, 193, 116, 108, 191, 173,
846
- 196, 1, 117, 2, 196, 196, 141, 4, 42, 41,
847
- 71, 89, 83, 83, 83, 83, 188, 79, 84, 85,
848
- 86, 52, 54, 55, 5, 214, 181, 185, 186, 213,
849
- 109, 113, 75, 116, 205, 114, 135, 217, 108, 170,
850
- 90, 209, 223, 39, 119, 207, 71, 71, 10, 11,
851
- 12, 116, 48, 95, 125, 162, 102, 147, 83, 83,
852
- 108, 103, 148, 104, 149, 105, 150, 106, 131, 151,
853
- 75, 67, 113, 134, 72, 110, 132, 136, 187, 211,
854
- 222, 123, 160, 100, 145, 71, 140, 71, 177, 206,
855
- 120, nil, 113, 83, nil, 83, nil, nil, nil, 157,
856
- nil, nil, 172, nil, nil, nil, nil, nil, nil, 71,
857
- nil, nil, nil, 83, nil, nil, nil, 178, nil, nil,
858
- nil, nil, nil, nil, nil, nil, nil, nil, 157, 192,
849
+ 76, 74, 69, 52, 209, 95, 110, 118, 119, 145,
850
+ 158, 1, 185, 2, 4, 212, 43, 42, 207, 212,
851
+ 212, 72, 91, 84, 84, 84, 84, 202, 80, 85,
852
+ 86, 87, 53, 55, 56, 223, 5, 40, 213, 111,
853
+ 115, 76, 116, 138, 199, 118, 182, 230, 110, 92,
854
+ 222, 193, 197, 198, 122, 10, 218, 72, 72, 11,
855
+ 12, 13, 49, 97, 118, 128, 169, 104, 151, 84,
856
+ 84, 110, 105, 152, 106, 153, 107, 154, 134, 108,
857
+ 76, 137, 115, 155, 68, 73, 112, 135, 139, 121,
858
+ 200, 204, 221, 126, 167, 102, 149, 72, 144, 72,
859
+ 189, 219, 123, 115, nil, 84, nil, 84, nil, nil,
860
+ nil, 164, nil, nil, nil, nil, nil, nil, nil, nil,
861
+ nil, nil, 72, 184, nil, 178, 84, nil, nil, nil,
862
+ nil, nil, 190, nil, nil, nil, nil, 201, nil, nil,
863
+ nil, nil, nil, nil, nil, nil, nil, 205, 164, 208,
859
864
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
860
- nil, nil, nil, 208, nil, nil, 198, nil, nil, nil,
861
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 212,
862
- 192, 220, 215, nil, nil, 198, nil, nil, 192, 225 ]
865
+ nil, nil, nil, nil, nil, nil, 178, nil, nil, 208,
866
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
867
+ nil, 208, nil, 224, 228, 229 ]
863
868
 
864
869
  racc_goto_check = [
865
- 41, 40, 34, 32, 46, 59, 53, 33, 43, 42,
866
- 63, 1, 52, 2, 63, 63, 58, 3, 54, 4,
867
- 34, 5, 34, 34, 34, 34, 39, 31, 31, 31,
868
- 31, 14, 14, 14, 6, 59, 20, 20, 20, 43,
869
- 32, 40, 40, 53, 42, 46, 52, 43, 33, 58,
870
- 54, 42, 59, 7, 8, 39, 34, 34, 9, 10,
871
- 11, 53, 12, 13, 15, 16, 17, 18, 34, 34,
872
- 33, 21, 22, 23, 24, 25, 26, 27, 32, 28,
873
- 40, 29, 40, 46, 30, 35, 36, 37, 38, 44,
874
- 45, 48, 49, 50, 51, 34, 57, 34, 60, 61,
875
- 62, nil, 40, 34, nil, 34, nil, nil, nil, 40,
876
- nil, nil, 41, nil, nil, nil, nil, nil, nil, 34,
877
- nil, nil, nil, 34, nil, nil, nil, 40, nil, nil,
878
- nil, nil, nil, nil, nil, nil, nil, nil, 40, 40,
870
+ 42, 48, 33, 35, 60, 43, 34, 55, 54, 59,
871
+ 39, 1, 44, 2, 3, 64, 56, 4, 45, 64,
872
+ 64, 35, 5, 35, 35, 35, 35, 44, 32, 32,
873
+ 32, 32, 15, 15, 15, 60, 6, 7, 45, 33,
874
+ 42, 42, 48, 54, 39, 55, 59, 60, 34, 56,
875
+ 45, 21, 21, 21, 8, 9, 44, 35, 35, 10,
876
+ 11, 12, 13, 14, 55, 16, 17, 18, 19, 35,
877
+ 35, 34, 22, 23, 24, 25, 26, 27, 33, 28,
878
+ 42, 48, 42, 29, 30, 31, 36, 37, 38, 40,
879
+ 41, 46, 47, 50, 51, 52, 53, 35, 58, 35,
880
+ 61, 62, 63, 42, nil, 35, nil, 35, nil, nil,
881
+ nil, 42, nil, nil, nil, nil, nil, nil, nil, nil,
882
+ nil, nil, 35, 43, nil, 42, 35, nil, nil, nil,
883
+ nil, nil, 42, nil, nil, nil, nil, 43, nil, nil,
884
+ nil, nil, nil, nil, nil, nil, nil, 42, 42, 42,
885
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
886
+ nil, nil, nil, nil, nil, nil, 42, nil, nil, 42,
879
887
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
880
- nil, nil, nil, 41, nil, nil, 40, nil, nil, nil,
881
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 40,
882
- 40, 41, 40, nil, nil, 40, nil, nil, 40, 41 ]
888
+ nil, 42, nil, 42, 43, 43 ]
883
889
 
884
890
  racc_goto_pointer = [
885
- nil, 11, 13, 15, 10, -20, 32, 47, -34, 54,
886
- 55, 56, 48, 15, 16, -37, -81, 9, -59, nil,
887
- -129, 13, -55, 14, -54, 15, -53, 16, -51, 49,
888
- 51, -7, -29, -61, -12, 14, -24, -31, -80, -142,
889
- -32, -45, -148, -163, -111, -128, -29, nil, -8, -52,
890
- 40, -30, -69, -74, 9, nil, nil, -25, -105, -168,
891
- -60, -96, 9, -171 ]
891
+ nil, 11, 13, 12, 8, -20, 34, 31, -36, 51,
892
+ 55, 56, 57, 47, 14, 16, -38, -84, 9, -61,
893
+ nil, -121, 13, -57, 14, -56, 15, -55, 17, -50,
894
+ 51, 51, -7, -31, -63, -12, 14, -25, -32, -131,
895
+ 0, -87, -34, -41, -152, -165, -89, -122, -33, nil,
896
+ -8, -54, 41, -31, -74, -74, 7, nil, -26, -115,
897
+ -181, -65, -110, 9, -178 ]
892
898
 
893
899
  racc_goto_default = [
894
900
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
895
- 44, nil, nil, nil, nil, nil, nil, nil, nil, 23,
896
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
897
- nil, nil, nil, 70, 76, nil, nil, nil, nil, nil,
898
- 183, nil, nil, nil, nil, nil, nil, 77, nil, nil,
899
- nil, nil, 80, 82, nil, 43, 45, nil, nil, nil,
900
- nil, nil, nil, 182 ]
901
+ 45, nil, nil, nil, nil, nil, nil, nil, nil, nil,
902
+ 24, nil, nil, nil, nil, nil, nil, nil, nil, nil,
903
+ nil, nil, nil, nil, 71, 77, nil, nil, nil, nil,
904
+ 46, 159, 195, nil, nil, nil, nil, nil, nil, 78,
905
+ nil, nil, nil, nil, 81, 83, nil, 44, nil, nil,
906
+ nil, nil, nil, nil, 194 ]
901
907
 
902
908
  racc_reduce_table = [
903
909
  0, 0, :racc_error,
904
- 5, 54, :_reduce_none,
905
- 0, 55, :_reduce_none,
906
- 2, 55, :_reduce_none,
907
- 0, 60, :_reduce_4,
908
- 0, 61, :_reduce_5,
909
- 5, 59, :_reduce_6,
910
- 2, 59, :_reduce_none,
911
- 0, 56, :_reduce_8,
910
+ 5, 55, :_reduce_none,
911
+ 0, 56, :_reduce_none,
912
912
  2, 56, :_reduce_none,
913
- 1, 62, :_reduce_none,
914
- 1, 62, :_reduce_none,
915
- 2, 62, :_reduce_12,
916
- 3, 62, :_reduce_none,
917
- 2, 62, :_reduce_none,
918
- 2, 62, :_reduce_15,
919
- 2, 62, :_reduce_16,
920
- 0, 68, :_reduce_17,
921
- 0, 69, :_reduce_18,
922
- 7, 62, :_reduce_19,
923
- 0, 70, :_reduce_20,
924
- 0, 71, :_reduce_21,
925
- 6, 62, :_reduce_22,
926
- 1, 62, :_reduce_23,
927
- 1, 62, :_reduce_none,
928
- 0, 74, :_reduce_25,
929
- 0, 75, :_reduce_26,
930
- 6, 63, :_reduce_27,
931
- 1, 63, :_reduce_none,
932
- 0, 76, :_reduce_29,
933
- 0, 77, :_reduce_30,
934
- 7, 63, :_reduce_31,
935
- 0, 78, :_reduce_32,
936
- 0, 79, :_reduce_33,
937
- 7, 63, :_reduce_34,
938
- 0, 80, :_reduce_35,
939
- 0, 81, :_reduce_36,
940
- 7, 63, :_reduce_37,
941
- 2, 63, :_reduce_38,
942
- 2, 63, :_reduce_39,
943
- 2, 63, :_reduce_40,
944
- 2, 63, :_reduce_41,
945
- 2, 63, :_reduce_42,
946
- 2, 72, :_reduce_none,
947
- 2, 72, :_reduce_44,
948
- 2, 72, :_reduce_45,
949
- 2, 72, :_reduce_46,
950
- 2, 72, :_reduce_47,
951
- 2, 72, :_reduce_48,
952
- 1, 82, :_reduce_49,
953
- 2, 82, :_reduce_50,
954
- 3, 82, :_reduce_51,
955
- 1, 85, :_reduce_52,
956
- 2, 85, :_reduce_53,
957
- 3, 86, :_reduce_54,
958
- 7, 64, :_reduce_55,
959
- 1, 90, :_reduce_56,
960
- 3, 90, :_reduce_57,
961
- 1, 91, :_reduce_58,
962
- 3, 91, :_reduce_59,
963
- 0, 92, :_reduce_60,
964
- 1, 92, :_reduce_61,
965
- 3, 92, :_reduce_62,
966
- 3, 92, :_reduce_63,
967
- 5, 92, :_reduce_64,
968
- 0, 97, :_reduce_65,
969
- 0, 98, :_reduce_66,
970
- 7, 92, :_reduce_67,
971
- 3, 92, :_reduce_68,
972
- 0, 88, :_reduce_none,
973
- 1, 88, :_reduce_none,
974
- 0, 89, :_reduce_none,
975
- 1, 89, :_reduce_none,
976
- 1, 83, :_reduce_73,
977
- 2, 83, :_reduce_74,
978
- 3, 83, :_reduce_75,
979
- 1, 99, :_reduce_76,
980
- 2, 99, :_reduce_77,
981
- 1, 93, :_reduce_none,
982
- 1, 93, :_reduce_none,
983
- 0, 101, :_reduce_80,
984
- 0, 102, :_reduce_81,
985
- 6, 67, :_reduce_82,
986
- 0, 103, :_reduce_83,
987
- 0, 104, :_reduce_84,
988
- 5, 67, :_reduce_85,
989
- 1, 84, :_reduce_86,
990
- 2, 84, :_reduce_87,
991
- 3, 84, :_reduce_88,
992
- 1, 105, :_reduce_89,
993
- 2, 105, :_reduce_90,
994
- 1, 106, :_reduce_none,
995
- 1, 87, :_reduce_92,
996
- 1, 87, :_reduce_93,
997
- 1, 57, :_reduce_none,
913
+ 0, 61, :_reduce_4,
914
+ 0, 62, :_reduce_5,
915
+ 5, 60, :_reduce_6,
916
+ 2, 60, :_reduce_none,
917
+ 0, 57, :_reduce_8,
998
918
  2, 57, :_reduce_none,
999
- 1, 107, :_reduce_none,
1000
- 2, 107, :_reduce_none,
1001
- 4, 108, :_reduce_98,
1002
- 1, 110, :_reduce_99,
1003
- 3, 110, :_reduce_100,
1004
- 2, 110, :_reduce_none,
1005
- 0, 111, :_reduce_102,
1006
- 1, 111, :_reduce_103,
1007
- 3, 111, :_reduce_104,
1008
- 4, 111, :_reduce_105,
1009
- 6, 111, :_reduce_106,
1010
- 0, 113, :_reduce_107,
1011
- 0, 114, :_reduce_108,
1012
- 8, 111, :_reduce_109,
1013
- 3, 111, :_reduce_110,
1014
- 1, 95, :_reduce_111,
1015
- 1, 95, :_reduce_112,
1016
- 1, 95, :_reduce_113,
1017
- 1, 96, :_reduce_114,
1018
- 3, 96, :_reduce_115,
1019
- 2, 96, :_reduce_116,
1020
- 4, 96, :_reduce_117,
1021
- 0, 94, :_reduce_none,
1022
- 3, 94, :_reduce_119,
919
+ 1, 63, :_reduce_none,
920
+ 1, 63, :_reduce_none,
921
+ 1, 63, :_reduce_none,
922
+ 2, 63, :_reduce_13,
923
+ 3, 63, :_reduce_none,
924
+ 2, 63, :_reduce_none,
925
+ 2, 63, :_reduce_16,
926
+ 2, 63, :_reduce_17,
927
+ 0, 70, :_reduce_18,
928
+ 0, 71, :_reduce_19,
929
+ 7, 63, :_reduce_20,
930
+ 0, 72, :_reduce_21,
931
+ 0, 73, :_reduce_22,
932
+ 6, 63, :_reduce_23,
933
+ 1, 63, :_reduce_24,
934
+ 1, 63, :_reduce_none,
935
+ 0, 76, :_reduce_26,
936
+ 0, 77, :_reduce_27,
937
+ 6, 64, :_reduce_28,
938
+ 1, 64, :_reduce_none,
939
+ 0, 78, :_reduce_30,
940
+ 0, 79, :_reduce_31,
941
+ 7, 64, :_reduce_32,
942
+ 0, 80, :_reduce_33,
943
+ 0, 81, :_reduce_34,
944
+ 7, 64, :_reduce_35,
945
+ 0, 82, :_reduce_36,
946
+ 0, 83, :_reduce_37,
947
+ 7, 64, :_reduce_38,
948
+ 2, 64, :_reduce_39,
949
+ 2, 64, :_reduce_40,
950
+ 2, 64, :_reduce_41,
951
+ 2, 64, :_reduce_42,
952
+ 2, 64, :_reduce_43,
953
+ 2, 74, :_reduce_none,
954
+ 2, 74, :_reduce_45,
955
+ 2, 74, :_reduce_46,
956
+ 2, 74, :_reduce_47,
957
+ 2, 74, :_reduce_48,
958
+ 2, 74, :_reduce_49,
959
+ 1, 84, :_reduce_50,
960
+ 2, 84, :_reduce_51,
961
+ 3, 84, :_reduce_52,
962
+ 1, 87, :_reduce_53,
963
+ 2, 87, :_reduce_54,
964
+ 3, 88, :_reduce_55,
965
+ 7, 65, :_reduce_56,
966
+ 5, 66, :_reduce_57,
967
+ 1, 92, :_reduce_58,
968
+ 3, 92, :_reduce_59,
969
+ 1, 93, :_reduce_60,
970
+ 3, 93, :_reduce_61,
971
+ 0, 95, :_reduce_62,
972
+ 1, 95, :_reduce_63,
973
+ 3, 95, :_reduce_64,
974
+ 3, 95, :_reduce_65,
975
+ 5, 95, :_reduce_66,
976
+ 0, 100, :_reduce_67,
977
+ 0, 101, :_reduce_68,
978
+ 7, 95, :_reduce_69,
979
+ 3, 95, :_reduce_70,
980
+ 0, 90, :_reduce_none,
981
+ 1, 90, :_reduce_none,
982
+ 0, 91, :_reduce_none,
983
+ 1, 91, :_reduce_none,
984
+ 1, 85, :_reduce_75,
985
+ 2, 85, :_reduce_76,
986
+ 3, 85, :_reduce_77,
987
+ 1, 102, :_reduce_78,
988
+ 2, 102, :_reduce_79,
989
+ 1, 96, :_reduce_none,
990
+ 1, 96, :_reduce_none,
991
+ 0, 104, :_reduce_82,
992
+ 0, 105, :_reduce_83,
993
+ 6, 69, :_reduce_84,
994
+ 0, 106, :_reduce_85,
995
+ 0, 107, :_reduce_86,
996
+ 5, 69, :_reduce_87,
997
+ 1, 86, :_reduce_88,
998
+ 2, 86, :_reduce_89,
999
+ 3, 86, :_reduce_90,
1000
+ 1, 108, :_reduce_91,
1001
+ 2, 108, :_reduce_92,
1023
1002
  1, 109, :_reduce_none,
1024
- 0, 58, :_reduce_none,
1025
- 0, 115, :_reduce_122,
1026
- 3, 58, :_reduce_123,
1027
- 1, 65, :_reduce_none,
1028
- 0, 66, :_reduce_none,
1029
- 1, 66, :_reduce_none,
1030
- 1, 66, :_reduce_none,
1031
- 1, 66, :_reduce_none,
1032
- 1, 73, :_reduce_129,
1033
- 2, 73, :_reduce_130,
1034
- 1, 116, :_reduce_none,
1035
- 1, 116, :_reduce_none,
1036
- 1, 100, :_reduce_133,
1037
- 0, 112, :_reduce_none,
1038
- 1, 112, :_reduce_none ]
1039
-
1040
- racc_reduce_n = 136
1041
-
1042
- racc_shift_n = 226
1003
+ 1, 89, :_reduce_94,
1004
+ 1, 89, :_reduce_95,
1005
+ 1, 58, :_reduce_none,
1006
+ 2, 58, :_reduce_none,
1007
+ 1, 110, :_reduce_none,
1008
+ 2, 110, :_reduce_none,
1009
+ 4, 111, :_reduce_100,
1010
+ 1, 112, :_reduce_101,
1011
+ 3, 112, :_reduce_102,
1012
+ 2, 112, :_reduce_none,
1013
+ 0, 113, :_reduce_104,
1014
+ 1, 113, :_reduce_105,
1015
+ 3, 113, :_reduce_106,
1016
+ 4, 113, :_reduce_107,
1017
+ 6, 113, :_reduce_108,
1018
+ 0, 115, :_reduce_109,
1019
+ 0, 116, :_reduce_110,
1020
+ 8, 113, :_reduce_111,
1021
+ 3, 113, :_reduce_112,
1022
+ 1, 98, :_reduce_113,
1023
+ 1, 98, :_reduce_114,
1024
+ 1, 98, :_reduce_115,
1025
+ 1, 99, :_reduce_116,
1026
+ 3, 99, :_reduce_117,
1027
+ 2, 99, :_reduce_118,
1028
+ 4, 99, :_reduce_119,
1029
+ 0, 97, :_reduce_none,
1030
+ 3, 97, :_reduce_121,
1031
+ 1, 94, :_reduce_none,
1032
+ 0, 59, :_reduce_none,
1033
+ 0, 117, :_reduce_124,
1034
+ 3, 59, :_reduce_125,
1035
+ 1, 67, :_reduce_none,
1036
+ 0, 68, :_reduce_none,
1037
+ 1, 68, :_reduce_none,
1038
+ 1, 68, :_reduce_none,
1039
+ 1, 68, :_reduce_none,
1040
+ 1, 75, :_reduce_131,
1041
+ 2, 75, :_reduce_132,
1042
+ 1, 118, :_reduce_none,
1043
+ 1, 118, :_reduce_none,
1044
+ 1, 103, :_reduce_135,
1045
+ 0, 114, :_reduce_none,
1046
+ 1, 114, :_reduce_none ]
1047
+
1048
+ racc_reduce_n = 138
1049
+
1050
+ racc_shift_n = 231
1043
1051
 
1044
1052
  racc_token_table = {
1045
1053
  false => 0,
@@ -1085,18 +1093,19 @@ racc_token_table = {
1085
1093
  "(" => 40,
1086
1094
  ")" => 41,
1087
1095
  ":" => 42,
1088
- "," => 43,
1089
- "|" => 44,
1090
- "%empty" => 45,
1091
- "%prec" => 46,
1092
- "?" => 47,
1093
- "+" => 48,
1094
- "*" => 49,
1095
- "[" => 50,
1096
- "]" => 51,
1097
- "{...}" => 52 }
1098
-
1099
- racc_nt_base = 53
1096
+ "%inline" => 43,
1097
+ "," => 44,
1098
+ "|" => 45,
1099
+ "%empty" => 46,
1100
+ "%prec" => 47,
1101
+ "?" => 48,
1102
+ "+" => 49,
1103
+ "*" => 50,
1104
+ "[" => 51,
1105
+ "]" => 52,
1106
+ "{...}" => 53 }
1107
+
1108
+ racc_nt_base = 54
1100
1109
 
1101
1110
  racc_use_result_var = true
1102
1111
 
@@ -1161,6 +1170,7 @@ Racc_token_to_s_table = [
1161
1170
  "\"(\"",
1162
1171
  "\")\"",
1163
1172
  "\":\"",
1173
+ "\"%inline\"",
1164
1174
  "\",\"",
1165
1175
  "\"|\"",
1166
1176
  "\"%empty\"",
@@ -1183,6 +1193,7 @@ Racc_token_to_s_table = [
1183
1193
  "bison_declaration",
1184
1194
  "grammar_declaration",
1185
1195
  "rule_declaration",
1196
+ "inline_declaration",
1186
1197
  "variable",
1187
1198
  "value",
1188
1199
  "params",
@@ -1210,6 +1221,7 @@ Racc_token_to_s_table = [
1210
1221
  "alias",
1211
1222
  "rule_args",
1212
1223
  "rule_rhs_list",
1224
+ "id_colon",
1213
1225
  "rule_rhs",
1214
1226
  "symbol",
1215
1227
  "named_ref_opt",
@@ -1227,7 +1239,6 @@ Racc_token_to_s_table = [
1227
1239
  "token_declaration_for_precedence",
1228
1240
  "rules_or_grammar_declaration",
1229
1241
  "rules",
1230
- "id_colon",
1231
1242
  "rhs_list",
1232
1243
  "rhs",
1233
1244
  "tag_opt",
@@ -1289,19 +1300,21 @@ module_eval(<<'.,.,', 'parser.y', 27)
1289
1300
 
1290
1301
  # reduce 11 omitted
1291
1302
 
1292
- module_eval(<<'.,.,', 'parser.y', 32)
1293
- def _reduce_12(val, _values, result)
1303
+ # reduce 12 omitted
1304
+
1305
+ module_eval(<<'.,.,', 'parser.y', 33)
1306
+ def _reduce_13(val, _values, result)
1294
1307
  @grammar.expect = val[1]
1295
1308
  result
1296
1309
  end
1297
1310
  .,.,
1298
1311
 
1299
- # reduce 13 omitted
1300
-
1301
1312
  # reduce 14 omitted
1302
1313
 
1303
- module_eval(<<'.,.,', 'parser.y', 37)
1304
- def _reduce_15(val, _values, result)
1314
+ # reduce 15 omitted
1315
+
1316
+ module_eval(<<'.,.,', 'parser.y', 38)
1317
+ def _reduce_16(val, _values, result)
1305
1318
  val[1].each {|token|
1306
1319
  @grammar.lex_param = Grammar::Code::NoReferenceCode.new(type: :lex_param, token_code: token).token_code.s_value
1307
1320
  }
@@ -1310,8 +1323,8 @@ module_eval(<<'.,.,', 'parser.y', 37)
1310
1323
  end
1311
1324
  .,.,
1312
1325
 
1313
- module_eval(<<'.,.,', 'parser.y', 43)
1314
- def _reduce_16(val, _values, result)
1326
+ module_eval(<<'.,.,', 'parser.y', 44)
1327
+ def _reduce_17(val, _values, result)
1315
1328
  val[1].each {|token|
1316
1329
  @grammar.parse_param = Grammar::Code::NoReferenceCode.new(type: :parse_param, token_code: token).token_code.s_value
1317
1330
  }
@@ -1320,81 +1333,81 @@ module_eval(<<'.,.,', 'parser.y', 43)
1320
1333
  end
1321
1334
  .,.,
1322
1335
 
1323
- module_eval(<<'.,.,', 'parser.y', 49)
1324
- def _reduce_17(val, _values, result)
1336
+ module_eval(<<'.,.,', 'parser.y', 50)
1337
+ def _reduce_18(val, _values, result)
1325
1338
  begin_c_declaration("}")
1326
1339
 
1327
1340
  result
1328
1341
  end
1329
1342
  .,.,
1330
1343
 
1331
- module_eval(<<'.,.,', 'parser.y', 53)
1332
- def _reduce_18(val, _values, result)
1344
+ module_eval(<<'.,.,', 'parser.y', 54)
1345
+ def _reduce_19(val, _values, result)
1333
1346
  end_c_declaration
1334
1347
 
1335
1348
  result
1336
1349
  end
1337
1350
  .,.,
1338
1351
 
1339
- module_eval(<<'.,.,', 'parser.y', 57)
1340
- def _reduce_19(val, _values, result)
1352
+ module_eval(<<'.,.,', 'parser.y', 58)
1353
+ def _reduce_20(val, _values, result)
1341
1354
  @grammar.add_percent_code(id: val[1], code: val[4])
1342
1355
 
1343
1356
  result
1344
1357
  end
1345
1358
  .,.,
1346
1359
 
1347
- module_eval(<<'.,.,', 'parser.y', 61)
1348
- def _reduce_20(val, _values, result)
1360
+ module_eval(<<'.,.,', 'parser.y', 62)
1361
+ def _reduce_21(val, _values, result)
1349
1362
  begin_c_declaration("}")
1350
1363
 
1351
1364
  result
1352
1365
  end
1353
1366
  .,.,
1354
1367
 
1355
- module_eval(<<'.,.,', 'parser.y', 65)
1356
- def _reduce_21(val, _values, result)
1368
+ module_eval(<<'.,.,', 'parser.y', 66)
1369
+ def _reduce_22(val, _values, result)
1357
1370
  end_c_declaration
1358
1371
 
1359
1372
  result
1360
1373
  end
1361
1374
  .,.,
1362
1375
 
1363
- module_eval(<<'.,.,', 'parser.y', 69)
1364
- def _reduce_22(val, _values, result)
1376
+ module_eval(<<'.,.,', 'parser.y', 70)
1377
+ def _reduce_23(val, _values, result)
1365
1378
  @grammar.initial_action = Grammar::Code::InitialActionCode.new(type: :initial_action, token_code: val[3])
1366
1379
 
1367
1380
  result
1368
1381
  end
1369
1382
  .,.,
1370
1383
 
1371
- module_eval(<<'.,.,', 'parser.y', 71)
1372
- def _reduce_23(val, _values, result)
1384
+ module_eval(<<'.,.,', 'parser.y', 72)
1385
+ def _reduce_24(val, _values, result)
1373
1386
  @grammar.no_stdlib = true
1374
1387
  result
1375
1388
  end
1376
1389
  .,.,
1377
1390
 
1378
- # reduce 24 omitted
1391
+ # reduce 25 omitted
1379
1392
 
1380
- module_eval(<<'.,.,', 'parser.y', 76)
1381
- def _reduce_25(val, _values, result)
1393
+ module_eval(<<'.,.,', 'parser.y', 77)
1394
+ def _reduce_26(val, _values, result)
1382
1395
  begin_c_declaration("}")
1383
1396
 
1384
1397
  result
1385
1398
  end
1386
1399
  .,.,
1387
1400
 
1388
- module_eval(<<'.,.,', 'parser.y', 80)
1389
- def _reduce_26(val, _values, result)
1401
+ module_eval(<<'.,.,', 'parser.y', 81)
1402
+ def _reduce_27(val, _values, result)
1390
1403
  end_c_declaration
1391
1404
 
1392
1405
  result
1393
1406
  end
1394
1407
  .,.,
1395
1408
 
1396
- module_eval(<<'.,.,', 'parser.y', 84)
1397
- def _reduce_27(val, _values, result)
1409
+ module_eval(<<'.,.,', 'parser.y', 85)
1410
+ def _reduce_28(val, _values, result)
1398
1411
  @grammar.set_union(
1399
1412
  Grammar::Code::NoReferenceCode.new(type: :union, token_code: val[3]),
1400
1413
  val[3].line
@@ -1404,26 +1417,26 @@ module_eval(<<'.,.,', 'parser.y', 84)
1404
1417
  end
1405
1418
  .,.,
1406
1419
 
1407
- # reduce 28 omitted
1420
+ # reduce 29 omitted
1408
1421
 
1409
- module_eval(<<'.,.,', 'parser.y', 92)
1410
- def _reduce_29(val, _values, result)
1422
+ module_eval(<<'.,.,', 'parser.y', 93)
1423
+ def _reduce_30(val, _values, result)
1411
1424
  begin_c_declaration("}")
1412
1425
 
1413
1426
  result
1414
1427
  end
1415
1428
  .,.,
1416
1429
 
1417
- module_eval(<<'.,.,', 'parser.y', 96)
1418
- def _reduce_30(val, _values, result)
1430
+ module_eval(<<'.,.,', 'parser.y', 97)
1431
+ def _reduce_31(val, _values, result)
1419
1432
  end_c_declaration
1420
1433
 
1421
1434
  result
1422
1435
  end
1423
1436
  .,.,
1424
1437
 
1425
- module_eval(<<'.,.,', 'parser.y', 100)
1426
- def _reduce_31(val, _values, result)
1438
+ module_eval(<<'.,.,', 'parser.y', 101)
1439
+ def _reduce_32(val, _values, result)
1427
1440
  @grammar.add_destructor(
1428
1441
  ident_or_tags: val[6],
1429
1442
  token_code: val[3],
@@ -1434,24 +1447,24 @@ module_eval(<<'.,.,', 'parser.y', 100)
1434
1447
  end
1435
1448
  .,.,
1436
1449
 
1437
- module_eval(<<'.,.,', 'parser.y', 108)
1438
- def _reduce_32(val, _values, result)
1450
+ module_eval(<<'.,.,', 'parser.y', 109)
1451
+ def _reduce_33(val, _values, result)
1439
1452
  begin_c_declaration("}")
1440
1453
 
1441
1454
  result
1442
1455
  end
1443
1456
  .,.,
1444
1457
 
1445
- module_eval(<<'.,.,', 'parser.y', 112)
1446
- def _reduce_33(val, _values, result)
1458
+ module_eval(<<'.,.,', 'parser.y', 113)
1459
+ def _reduce_34(val, _values, result)
1447
1460
  end_c_declaration
1448
1461
 
1449
1462
  result
1450
1463
  end
1451
1464
  .,.,
1452
1465
 
1453
- module_eval(<<'.,.,', 'parser.y', 116)
1454
- def _reduce_34(val, _values, result)
1466
+ module_eval(<<'.,.,', 'parser.y', 117)
1467
+ def _reduce_35(val, _values, result)
1455
1468
  @grammar.add_printer(
1456
1469
  ident_or_tags: val[6],
1457
1470
  token_code: val[3],
@@ -1462,24 +1475,24 @@ module_eval(<<'.,.,', 'parser.y', 116)
1462
1475
  end
1463
1476
  .,.,
1464
1477
 
1465
- module_eval(<<'.,.,', 'parser.y', 124)
1466
- def _reduce_35(val, _values, result)
1478
+ module_eval(<<'.,.,', 'parser.y', 125)
1479
+ def _reduce_36(val, _values, result)
1467
1480
  begin_c_declaration("}")
1468
1481
 
1469
1482
  result
1470
1483
  end
1471
1484
  .,.,
1472
1485
 
1473
- module_eval(<<'.,.,', 'parser.y', 128)
1474
- def _reduce_36(val, _values, result)
1486
+ module_eval(<<'.,.,', 'parser.y', 129)
1487
+ def _reduce_37(val, _values, result)
1475
1488
  end_c_declaration
1476
1489
 
1477
1490
  result
1478
1491
  end
1479
1492
  .,.,
1480
1493
 
1481
- module_eval(<<'.,.,', 'parser.y', 132)
1482
- def _reduce_37(val, _values, result)
1494
+ module_eval(<<'.,.,', 'parser.y', 133)
1495
+ def _reduce_38(val, _values, result)
1483
1496
  @grammar.add_error_token(
1484
1497
  ident_or_tags: val[6],
1485
1498
  token_code: val[3],
@@ -1490,50 +1503,50 @@ module_eval(<<'.,.,', 'parser.y', 132)
1490
1503
  end
1491
1504
  .,.,
1492
1505
 
1493
- module_eval(<<'.,.,', 'parser.y', 140)
1494
- def _reduce_38(val, _values, result)
1506
+ module_eval(<<'.,.,', 'parser.y', 141)
1507
+ def _reduce_39(val, _values, result)
1495
1508
  @grammar.after_shift = val[1]
1496
1509
 
1497
1510
  result
1498
1511
  end
1499
1512
  .,.,
1500
1513
 
1501
- module_eval(<<'.,.,', 'parser.y', 144)
1502
- def _reduce_39(val, _values, result)
1514
+ module_eval(<<'.,.,', 'parser.y', 145)
1515
+ def _reduce_40(val, _values, result)
1503
1516
  @grammar.before_reduce = val[1]
1504
1517
 
1505
1518
  result
1506
1519
  end
1507
1520
  .,.,
1508
1521
 
1509
- module_eval(<<'.,.,', 'parser.y', 148)
1510
- def _reduce_40(val, _values, result)
1522
+ module_eval(<<'.,.,', 'parser.y', 149)
1523
+ def _reduce_41(val, _values, result)
1511
1524
  @grammar.after_reduce = val[1]
1512
1525
 
1513
1526
  result
1514
1527
  end
1515
1528
  .,.,
1516
1529
 
1517
- module_eval(<<'.,.,', 'parser.y', 152)
1518
- def _reduce_41(val, _values, result)
1530
+ module_eval(<<'.,.,', 'parser.y', 153)
1531
+ def _reduce_42(val, _values, result)
1519
1532
  @grammar.after_shift_error_token = val[1]
1520
1533
 
1521
1534
  result
1522
1535
  end
1523
1536
  .,.,
1524
1537
 
1525
- module_eval(<<'.,.,', 'parser.y', 156)
1526
- def _reduce_42(val, _values, result)
1538
+ module_eval(<<'.,.,', 'parser.y', 157)
1539
+ def _reduce_43(val, _values, result)
1527
1540
  @grammar.after_pop_stack = val[1]
1528
1541
 
1529
1542
  result
1530
1543
  end
1531
1544
  .,.,
1532
1545
 
1533
- # reduce 43 omitted
1546
+ # reduce 44 omitted
1534
1547
 
1535
- module_eval(<<'.,.,', 'parser.y', 162)
1536
- def _reduce_44(val, _values, result)
1548
+ module_eval(<<'.,.,', 'parser.y', 163)
1549
+ def _reduce_45(val, _values, result)
1537
1550
  val[1].each {|hash|
1538
1551
  hash[:tokens].each {|id|
1539
1552
  @grammar.add_type(id: id, tag: hash[:tag])
@@ -1544,8 +1557,8 @@ module_eval(<<'.,.,', 'parser.y', 162)
1544
1557
  end
1545
1558
  .,.,
1546
1559
 
1547
- module_eval(<<'.,.,', 'parser.y', 170)
1548
- def _reduce_45(val, _values, result)
1560
+ module_eval(<<'.,.,', 'parser.y', 171)
1561
+ def _reduce_46(val, _values, result)
1549
1562
  val[1].each {|hash|
1550
1563
  hash[:tokens].each {|id|
1551
1564
  sym = @grammar.add_term(id: id)
@@ -1558,8 +1571,8 @@ module_eval(<<'.,.,', 'parser.y', 170)
1558
1571
  end
1559
1572
  .,.,
1560
1573
 
1561
- module_eval(<<'.,.,', 'parser.y', 180)
1562
- def _reduce_46(val, _values, result)
1574
+ module_eval(<<'.,.,', 'parser.y', 181)
1575
+ def _reduce_47(val, _values, result)
1563
1576
  val[1].each {|hash|
1564
1577
  hash[:tokens].each {|id|
1565
1578
  sym = @grammar.add_term(id: id)
@@ -1572,8 +1585,8 @@ module_eval(<<'.,.,', 'parser.y', 180)
1572
1585
  end
1573
1586
  .,.,
1574
1587
 
1575
- module_eval(<<'.,.,', 'parser.y', 190)
1576
- def _reduce_47(val, _values, result)
1588
+ module_eval(<<'.,.,', 'parser.y', 191)
1589
+ def _reduce_48(val, _values, result)
1577
1590
  val[1].each {|hash|
1578
1591
  hash[:tokens].each {|id|
1579
1592
  sym = @grammar.add_term(id: id)
@@ -1586,8 +1599,8 @@ module_eval(<<'.,.,', 'parser.y', 190)
1586
1599
  end
1587
1600
  .,.,
1588
1601
 
1589
- module_eval(<<'.,.,', 'parser.y', 200)
1590
- def _reduce_48(val, _values, result)
1602
+ module_eval(<<'.,.,', 'parser.y', 201)
1603
+ def _reduce_49(val, _values, result)
1591
1604
  val[1].each {|hash|
1592
1605
  hash[:tokens].each {|id|
1593
1606
  sym = @grammar.add_term(id: id)
@@ -1600,8 +1613,8 @@ module_eval(<<'.,.,', 'parser.y', 200)
1600
1613
  end
1601
1614
  .,.,
1602
1615
 
1603
- module_eval(<<'.,.,', 'parser.y', 211)
1604
- def _reduce_49(val, _values, result)
1616
+ module_eval(<<'.,.,', 'parser.y', 212)
1617
+ def _reduce_50(val, _values, result)
1605
1618
  val[0].each {|token_declaration|
1606
1619
  @grammar.add_term(id: token_declaration[0], alias_name: token_declaration[2], token_id: token_declaration[1], tag: nil, replace: true)
1607
1620
  }
@@ -1610,8 +1623,8 @@ module_eval(<<'.,.,', 'parser.y', 211)
1610
1623
  end
1611
1624
  .,.,
1612
1625
 
1613
- module_eval(<<'.,.,', 'parser.y', 217)
1614
- def _reduce_50(val, _values, result)
1626
+ module_eval(<<'.,.,', 'parser.y', 218)
1627
+ def _reduce_51(val, _values, result)
1615
1628
  val[1].each {|token_declaration|
1616
1629
  @grammar.add_term(id: token_declaration[0], alias_name: token_declaration[2], token_id: token_declaration[1], tag: val[0], replace: true)
1617
1630
  }
@@ -1620,8 +1633,8 @@ module_eval(<<'.,.,', 'parser.y', 217)
1620
1633
  end
1621
1634
  .,.,
1622
1635
 
1623
- module_eval(<<'.,.,', 'parser.y', 223)
1624
- def _reduce_51(val, _values, result)
1636
+ module_eval(<<'.,.,', 'parser.y', 224)
1637
+ def _reduce_52(val, _values, result)
1625
1638
  val[2].each {|token_declaration|
1626
1639
  @grammar.add_term(id: token_declaration[0], alias_name: token_declaration[2], token_id: token_declaration[1], tag: val[1], replace: true)
1627
1640
  }
@@ -1630,29 +1643,29 @@ module_eval(<<'.,.,', 'parser.y', 223)
1630
1643
  end
1631
1644
  .,.,
1632
1645
 
1633
- module_eval(<<'.,.,', 'parser.y', 228)
1634
- def _reduce_52(val, _values, result)
1646
+ module_eval(<<'.,.,', 'parser.y', 229)
1647
+ def _reduce_53(val, _values, result)
1635
1648
  result = [val[0]]
1636
1649
  result
1637
1650
  end
1638
1651
  .,.,
1639
1652
 
1640
- module_eval(<<'.,.,', 'parser.y', 229)
1641
- def _reduce_53(val, _values, result)
1653
+ module_eval(<<'.,.,', 'parser.y', 230)
1654
+ def _reduce_54(val, _values, result)
1642
1655
  result = val[0].append(val[1])
1643
1656
  result
1644
1657
  end
1645
1658
  .,.,
1646
1659
 
1647
- module_eval(<<'.,.,', 'parser.y', 231)
1648
- def _reduce_54(val, _values, result)
1660
+ module_eval(<<'.,.,', 'parser.y', 232)
1661
+ def _reduce_55(val, _values, result)
1649
1662
  result = val
1650
1663
  result
1651
1664
  end
1652
1665
  .,.,
1653
1666
 
1654
- module_eval(<<'.,.,', 'parser.y', 235)
1655
- def _reduce_55(val, _values, result)
1667
+ module_eval(<<'.,.,', 'parser.y', 236)
1668
+ def _reduce_56(val, _values, result)
1656
1669
  rule = Grammar::ParameterizingRule::Rule.new(val[1].s_value, val[3], val[6])
1657
1670
  @grammar.add_parameterizing_rule(rule)
1658
1671
 
@@ -1660,22 +1673,31 @@ module_eval(<<'.,.,', 'parser.y', 235)
1660
1673
  end
1661
1674
  .,.,
1662
1675
 
1663
- module_eval(<<'.,.,', 'parser.y', 239)
1664
- def _reduce_56(val, _values, result)
1676
+ module_eval(<<'.,.,', 'parser.y', 242)
1677
+ def _reduce_57(val, _values, result)
1678
+ rule = Grammar::ParameterizingRule::Rule.new(val[2].s_value, [], val[4], is_inline: true)
1679
+ @grammar.add_parameterizing_rule(rule)
1680
+
1681
+ result
1682
+ end
1683
+ .,.,
1684
+
1685
+ module_eval(<<'.,.,', 'parser.y', 246)
1686
+ def _reduce_58(val, _values, result)
1665
1687
  result = [val[0]]
1666
1688
  result
1667
1689
  end
1668
1690
  .,.,
1669
1691
 
1670
- module_eval(<<'.,.,', 'parser.y', 240)
1671
- def _reduce_57(val, _values, result)
1692
+ module_eval(<<'.,.,', 'parser.y', 247)
1693
+ def _reduce_59(val, _values, result)
1672
1694
  result = val[0].append(val[2])
1673
1695
  result
1674
1696
  end
1675
1697
  .,.,
1676
1698
 
1677
- module_eval(<<'.,.,', 'parser.y', 244)
1678
- def _reduce_58(val, _values, result)
1699
+ module_eval(<<'.,.,', 'parser.y', 251)
1700
+ def _reduce_60(val, _values, result)
1679
1701
  builder = val[0]
1680
1702
  result = [builder]
1681
1703
 
@@ -1683,8 +1705,8 @@ module_eval(<<'.,.,', 'parser.y', 244)
1683
1705
  end
1684
1706
  .,.,
1685
1707
 
1686
- module_eval(<<'.,.,', 'parser.y', 249)
1687
- def _reduce_59(val, _values, result)
1708
+ module_eval(<<'.,.,', 'parser.y', 256)
1709
+ def _reduce_61(val, _values, result)
1688
1710
  builder = val[2]
1689
1711
  result = val[0].append(builder)
1690
1712
 
@@ -1692,8 +1714,8 @@ module_eval(<<'.,.,', 'parser.y', 249)
1692
1714
  end
1693
1715
  .,.,
1694
1716
 
1695
- module_eval(<<'.,.,', 'parser.y', 255)
1696
- def _reduce_60(val, _values, result)
1717
+ module_eval(<<'.,.,', 'parser.y', 262)
1718
+ def _reduce_62(val, _values, result)
1697
1719
  reset_precs
1698
1720
  result = Grammar::ParameterizingRule::Rhs.new
1699
1721
 
@@ -1701,8 +1723,8 @@ module_eval(<<'.,.,', 'parser.y', 255)
1701
1723
  end
1702
1724
  .,.,
1703
1725
 
1704
- module_eval(<<'.,.,', 'parser.y', 260)
1705
- def _reduce_61(val, _values, result)
1726
+ module_eval(<<'.,.,', 'parser.y', 267)
1727
+ def _reduce_63(val, _values, result)
1706
1728
  reset_precs
1707
1729
  result = Grammar::ParameterizingRule::Rhs.new
1708
1730
 
@@ -1710,8 +1732,8 @@ module_eval(<<'.,.,', 'parser.y', 260)
1710
1732
  end
1711
1733
  .,.,
1712
1734
 
1713
- module_eval(<<'.,.,', 'parser.y', 265)
1714
- def _reduce_62(val, _values, result)
1735
+ module_eval(<<'.,.,', 'parser.y', 272)
1736
+ def _reduce_64(val, _values, result)
1715
1737
  token = val[1]
1716
1738
  token.alias_name = val[2]
1717
1739
  builder = val[0]
@@ -1722,8 +1744,8 @@ module_eval(<<'.,.,', 'parser.y', 265)
1722
1744
  end
1723
1745
  .,.,
1724
1746
 
1725
- module_eval(<<'.,.,', 'parser.y', 273)
1726
- def _reduce_63(val, _values, result)
1747
+ module_eval(<<'.,.,', 'parser.y', 280)
1748
+ def _reduce_65(val, _values, result)
1727
1749
  builder = val[0]
1728
1750
  builder.symbols << Lrama::Lexer::Token::InstantiateRule.new(s_value: val[2], location: @lexer.location, args: [val[1]])
1729
1751
  result = builder
@@ -1732,8 +1754,8 @@ module_eval(<<'.,.,', 'parser.y', 273)
1732
1754
  end
1733
1755
  .,.,
1734
1756
 
1735
- module_eval(<<'.,.,', 'parser.y', 279)
1736
- def _reduce_64(val, _values, result)
1757
+ module_eval(<<'.,.,', 'parser.y', 286)
1758
+ def _reduce_66(val, _values, result)
1737
1759
  builder = val[0]
1738
1760
  builder.symbols << Lrama::Lexer::Token::InstantiateRule.new(s_value: val[1].s_value, location: @lexer.location, args: val[3])
1739
1761
  result = builder
@@ -1742,8 +1764,8 @@ module_eval(<<'.,.,', 'parser.y', 279)
1742
1764
  end
1743
1765
  .,.,
1744
1766
 
1745
- module_eval(<<'.,.,', 'parser.y', 285)
1746
- def _reduce_65(val, _values, result)
1767
+ module_eval(<<'.,.,', 'parser.y', 292)
1768
+ def _reduce_67(val, _values, result)
1747
1769
  if @prec_seen
1748
1770
  on_action_error("multiple User_code after %prec", val[0]) if @code_after_prec
1749
1771
  @code_after_prec = true
@@ -1754,16 +1776,16 @@ module_eval(<<'.,.,', 'parser.y', 285)
1754
1776
  end
1755
1777
  .,.,
1756
1778
 
1757
- module_eval(<<'.,.,', 'parser.y', 293)
1758
- def _reduce_66(val, _values, result)
1779
+ module_eval(<<'.,.,', 'parser.y', 300)
1780
+ def _reduce_68(val, _values, result)
1759
1781
  end_c_declaration
1760
1782
 
1761
1783
  result
1762
1784
  end
1763
1785
  .,.,
1764
1786
 
1765
- module_eval(<<'.,.,', 'parser.y', 297)
1766
- def _reduce_67(val, _values, result)
1787
+ module_eval(<<'.,.,', 'parser.y', 304)
1788
+ def _reduce_69(val, _values, result)
1767
1789
  user_code = val[3]
1768
1790
  user_code.alias_name = val[6]
1769
1791
  builder = val[0]
@@ -1774,8 +1796,8 @@ module_eval(<<'.,.,', 'parser.y', 297)
1774
1796
  end
1775
1797
  .,.,
1776
1798
 
1777
- module_eval(<<'.,.,', 'parser.y', 305)
1778
- def _reduce_68(val, _values, result)
1799
+ module_eval(<<'.,.,', 'parser.y', 312)
1800
+ def _reduce_70(val, _values, result)
1779
1801
  sym = @grammar.find_symbol_by_id!(val[2])
1780
1802
  @prec_seen = true
1781
1803
  builder = val[0]
@@ -1786,168 +1808,168 @@ module_eval(<<'.,.,', 'parser.y', 305)
1786
1808
  end
1787
1809
  .,.,
1788
1810
 
1789
- # reduce 69 omitted
1790
-
1791
- # reduce 70 omitted
1792
-
1793
1811
  # reduce 71 omitted
1794
1812
 
1795
1813
  # reduce 72 omitted
1796
1814
 
1797
- module_eval(<<'.,.,', 'parser.y', 320)
1798
- def _reduce_73(val, _values, result)
1815
+ # reduce 73 omitted
1816
+
1817
+ # reduce 74 omitted
1818
+
1819
+ module_eval(<<'.,.,', 'parser.y', 327)
1820
+ def _reduce_75(val, _values, result)
1799
1821
  result = [{tag: nil, tokens: val[0]}]
1800
1822
 
1801
1823
  result
1802
1824
  end
1803
1825
  .,.,
1804
1826
 
1805
- module_eval(<<'.,.,', 'parser.y', 324)
1806
- def _reduce_74(val, _values, result)
1827
+ module_eval(<<'.,.,', 'parser.y', 331)
1828
+ def _reduce_76(val, _values, result)
1807
1829
  result = [{tag: val[0], tokens: val[1]}]
1808
1830
 
1809
1831
  result
1810
1832
  end
1811
1833
  .,.,
1812
1834
 
1813
- module_eval(<<'.,.,', 'parser.y', 328)
1814
- def _reduce_75(val, _values, result)
1835
+ module_eval(<<'.,.,', 'parser.y', 335)
1836
+ def _reduce_77(val, _values, result)
1815
1837
  result = val[0].append({tag: val[1], tokens: val[2]})
1816
1838
 
1817
1839
  result
1818
1840
  end
1819
1841
  .,.,
1820
1842
 
1821
- module_eval(<<'.,.,', 'parser.y', 331)
1822
- def _reduce_76(val, _values, result)
1843
+ module_eval(<<'.,.,', 'parser.y', 338)
1844
+ def _reduce_78(val, _values, result)
1823
1845
  result = [val[0]]
1824
1846
  result
1825
1847
  end
1826
1848
  .,.,
1827
1849
 
1828
- module_eval(<<'.,.,', 'parser.y', 332)
1829
- def _reduce_77(val, _values, result)
1850
+ module_eval(<<'.,.,', 'parser.y', 339)
1851
+ def _reduce_79(val, _values, result)
1830
1852
  result = val[0].append(val[1])
1831
1853
  result
1832
1854
  end
1833
1855
  .,.,
1834
1856
 
1835
- # reduce 78 omitted
1857
+ # reduce 80 omitted
1836
1858
 
1837
- # reduce 79 omitted
1859
+ # reduce 81 omitted
1838
1860
 
1839
- module_eval(<<'.,.,', 'parser.y', 339)
1840
- def _reduce_80(val, _values, result)
1861
+ module_eval(<<'.,.,', 'parser.y', 346)
1862
+ def _reduce_82(val, _values, result)
1841
1863
  begin_c_declaration("}")
1842
1864
 
1843
1865
  result
1844
1866
  end
1845
1867
  .,.,
1846
1868
 
1847
- module_eval(<<'.,.,', 'parser.y', 343)
1848
- def _reduce_81(val, _values, result)
1869
+ module_eval(<<'.,.,', 'parser.y', 350)
1870
+ def _reduce_83(val, _values, result)
1849
1871
  end_c_declaration
1850
1872
 
1851
1873
  result
1852
1874
  end
1853
1875
  .,.,
1854
1876
 
1855
- module_eval(<<'.,.,', 'parser.y', 347)
1856
- def _reduce_82(val, _values, result)
1877
+ module_eval(<<'.,.,', 'parser.y', 354)
1878
+ def _reduce_84(val, _values, result)
1857
1879
  result = val[0].append(val[3])
1858
1880
 
1859
1881
  result
1860
1882
  end
1861
1883
  .,.,
1862
1884
 
1863
- module_eval(<<'.,.,', 'parser.y', 351)
1864
- def _reduce_83(val, _values, result)
1885
+ module_eval(<<'.,.,', 'parser.y', 358)
1886
+ def _reduce_85(val, _values, result)
1865
1887
  begin_c_declaration("}")
1866
1888
 
1867
1889
  result
1868
1890
  end
1869
1891
  .,.,
1870
1892
 
1871
- module_eval(<<'.,.,', 'parser.y', 355)
1872
- def _reduce_84(val, _values, result)
1893
+ module_eval(<<'.,.,', 'parser.y', 362)
1894
+ def _reduce_86(val, _values, result)
1873
1895
  end_c_declaration
1874
1896
 
1875
1897
  result
1876
1898
  end
1877
1899
  .,.,
1878
1900
 
1879
- module_eval(<<'.,.,', 'parser.y', 359)
1880
- def _reduce_85(val, _values, result)
1901
+ module_eval(<<'.,.,', 'parser.y', 366)
1902
+ def _reduce_87(val, _values, result)
1881
1903
  result = [val[2]]
1882
1904
 
1883
1905
  result
1884
1906
  end
1885
1907
  .,.,
1886
1908
 
1887
- module_eval(<<'.,.,', 'parser.y', 364)
1888
- def _reduce_86(val, _values, result)
1909
+ module_eval(<<'.,.,', 'parser.y', 371)
1910
+ def _reduce_88(val, _values, result)
1889
1911
  result = [{tag: nil, tokens: val[0]}]
1890
1912
 
1891
1913
  result
1892
1914
  end
1893
1915
  .,.,
1894
1916
 
1895
- module_eval(<<'.,.,', 'parser.y', 368)
1896
- def _reduce_87(val, _values, result)
1917
+ module_eval(<<'.,.,', 'parser.y', 375)
1918
+ def _reduce_89(val, _values, result)
1897
1919
  result = [{tag: val[0], tokens: val[1]}]
1898
1920
 
1899
1921
  result
1900
1922
  end
1901
1923
  .,.,
1902
1924
 
1903
- module_eval(<<'.,.,', 'parser.y', 372)
1904
- def _reduce_88(val, _values, result)
1925
+ module_eval(<<'.,.,', 'parser.y', 379)
1926
+ def _reduce_90(val, _values, result)
1905
1927
  result = val[0].append({tag: val[1], tokens: val[2]})
1906
1928
 
1907
1929
  result
1908
1930
  end
1909
1931
  .,.,
1910
1932
 
1911
- module_eval(<<'.,.,', 'parser.y', 375)
1912
- def _reduce_89(val, _values, result)
1933
+ module_eval(<<'.,.,', 'parser.y', 382)
1934
+ def _reduce_91(val, _values, result)
1913
1935
  result = [val[0]]
1914
1936
  result
1915
1937
  end
1916
1938
  .,.,
1917
1939
 
1918
- module_eval(<<'.,.,', 'parser.y', 376)
1919
- def _reduce_90(val, _values, result)
1940
+ module_eval(<<'.,.,', 'parser.y', 383)
1941
+ def _reduce_92(val, _values, result)
1920
1942
  result = val[0].append(val[1])
1921
1943
  result
1922
1944
  end
1923
1945
  .,.,
1924
1946
 
1925
- # reduce 91 omitted
1947
+ # reduce 93 omitted
1926
1948
 
1927
- module_eval(<<'.,.,', 'parser.y', 380)
1928
- def _reduce_92(val, _values, result)
1949
+ module_eval(<<'.,.,', 'parser.y', 387)
1950
+ def _reduce_94(val, _values, result)
1929
1951
  on_action_error("ident after %prec", val[0]) if @prec_seen
1930
1952
  result
1931
1953
  end
1932
1954
  .,.,
1933
1955
 
1934
- module_eval(<<'.,.,', 'parser.y', 381)
1935
- def _reduce_93(val, _values, result)
1956
+ module_eval(<<'.,.,', 'parser.y', 388)
1957
+ def _reduce_95(val, _values, result)
1936
1958
  on_action_error("char after %prec", val[0]) if @prec_seen
1937
1959
  result
1938
1960
  end
1939
1961
  .,.,
1940
1962
 
1941
- # reduce 94 omitted
1942
-
1943
- # reduce 95 omitted
1944
-
1945
1963
  # reduce 96 omitted
1946
1964
 
1947
1965
  # reduce 97 omitted
1948
1966
 
1949
- module_eval(<<'.,.,', 'parser.y', 391)
1950
- def _reduce_98(val, _values, result)
1967
+ # reduce 98 omitted
1968
+
1969
+ # reduce 99 omitted
1970
+
1971
+ module_eval(<<'.,.,', 'parser.y', 398)
1972
+ def _reduce_100(val, _values, result)
1951
1973
  lhs = val[0]
1952
1974
  lhs.alias_name = val[1]
1953
1975
  val[3].each do |builder|
@@ -1960,8 +1982,8 @@ module_eval(<<'.,.,', 'parser.y', 391)
1960
1982
  end
1961
1983
  .,.,
1962
1984
 
1963
- module_eval(<<'.,.,', 'parser.y', 402)
1964
- def _reduce_99(val, _values, result)
1985
+ module_eval(<<'.,.,', 'parser.y', 409)
1986
+ def _reduce_101(val, _values, result)
1965
1987
  builder = val[0]
1966
1988
  if !builder.line
1967
1989
  builder.line = @lexer.line - 1
@@ -1972,8 +1994,8 @@ module_eval(<<'.,.,', 'parser.y', 402)
1972
1994
  end
1973
1995
  .,.,
1974
1996
 
1975
- module_eval(<<'.,.,', 'parser.y', 410)
1976
- def _reduce_100(val, _values, result)
1997
+ module_eval(<<'.,.,', 'parser.y', 417)
1998
+ def _reduce_102(val, _values, result)
1977
1999
  builder = val[2]
1978
2000
  if !builder.line
1979
2001
  builder.line = @lexer.line - 1
@@ -1984,10 +2006,10 @@ module_eval(<<'.,.,', 'parser.y', 410)
1984
2006
  end
1985
2007
  .,.,
1986
2008
 
1987
- # reduce 101 omitted
2009
+ # reduce 103 omitted
1988
2010
 
1989
- module_eval(<<'.,.,', 'parser.y', 420)
1990
- def _reduce_102(val, _values, result)
2011
+ module_eval(<<'.,.,', 'parser.y', 427)
2012
+ def _reduce_104(val, _values, result)
1991
2013
  reset_precs
1992
2014
  result = Grammar::RuleBuilder.new(@rule_counter, @midrule_action_counter)
1993
2015
 
@@ -1995,8 +2017,8 @@ module_eval(<<'.,.,', 'parser.y', 420)
1995
2017
  end
1996
2018
  .,.,
1997
2019
 
1998
- module_eval(<<'.,.,', 'parser.y', 425)
1999
- def _reduce_103(val, _values, result)
2020
+ module_eval(<<'.,.,', 'parser.y', 432)
2021
+ def _reduce_105(val, _values, result)
2000
2022
  reset_precs
2001
2023
  result = Grammar::RuleBuilder.new(@rule_counter, @midrule_action_counter)
2002
2024
 
@@ -2004,8 +2026,8 @@ module_eval(<<'.,.,', 'parser.y', 425)
2004
2026
  end
2005
2027
  .,.,
2006
2028
 
2007
- module_eval(<<'.,.,', 'parser.y', 430)
2008
- def _reduce_104(val, _values, result)
2029
+ module_eval(<<'.,.,', 'parser.y', 437)
2030
+ def _reduce_106(val, _values, result)
2009
2031
  token = val[1]
2010
2032
  token.alias_name = val[2]
2011
2033
  builder = val[0]
@@ -2016,8 +2038,8 @@ module_eval(<<'.,.,', 'parser.y', 430)
2016
2038
  end
2017
2039
  .,.,
2018
2040
 
2019
- module_eval(<<'.,.,', 'parser.y', 438)
2020
- def _reduce_105(val, _values, result)
2041
+ module_eval(<<'.,.,', 'parser.y', 445)
2042
+ def _reduce_107(val, _values, result)
2021
2043
  token = Lrama::Lexer::Token::InstantiateRule.new(s_value: val[2], location: @lexer.location, args: [val[1]], lhs_tag: val[3])
2022
2044
  builder = val[0]
2023
2045
  builder.add_rhs(token)
@@ -2028,8 +2050,8 @@ module_eval(<<'.,.,', 'parser.y', 438)
2028
2050
  end
2029
2051
  .,.,
2030
2052
 
2031
- module_eval(<<'.,.,', 'parser.y', 446)
2032
- def _reduce_106(val, _values, result)
2053
+ module_eval(<<'.,.,', 'parser.y', 453)
2054
+ def _reduce_108(val, _values, result)
2033
2055
  token = Lrama::Lexer::Token::InstantiateRule.new(s_value: val[1].s_value, location: @lexer.location, args: val[3], lhs_tag: val[5])
2034
2056
  builder = val[0]
2035
2057
  builder.add_rhs(token)
@@ -2040,8 +2062,8 @@ module_eval(<<'.,.,', 'parser.y', 446)
2040
2062
  end
2041
2063
  .,.,
2042
2064
 
2043
- module_eval(<<'.,.,', 'parser.y', 454)
2044
- def _reduce_107(val, _values, result)
2065
+ module_eval(<<'.,.,', 'parser.y', 461)
2066
+ def _reduce_109(val, _values, result)
2045
2067
  if @prec_seen
2046
2068
  on_action_error("multiple User_code after %prec", val[0]) if @code_after_prec
2047
2069
  @code_after_prec = true
@@ -2052,16 +2074,16 @@ module_eval(<<'.,.,', 'parser.y', 454)
2052
2074
  end
2053
2075
  .,.,
2054
2076
 
2055
- module_eval(<<'.,.,', 'parser.y', 462)
2056
- def _reduce_108(val, _values, result)
2077
+ module_eval(<<'.,.,', 'parser.y', 469)
2078
+ def _reduce_110(val, _values, result)
2057
2079
  end_c_declaration
2058
2080
 
2059
2081
  result
2060
2082
  end
2061
2083
  .,.,
2062
2084
 
2063
- module_eval(<<'.,.,', 'parser.y', 466)
2064
- def _reduce_109(val, _values, result)
2085
+ module_eval(<<'.,.,', 'parser.y', 473)
2086
+ def _reduce_111(val, _values, result)
2065
2087
  user_code = val[3]
2066
2088
  user_code.alias_name = val[6]
2067
2089
  user_code.tag = val[7]
@@ -2073,8 +2095,8 @@ module_eval(<<'.,.,', 'parser.y', 466)
2073
2095
  end
2074
2096
  .,.,
2075
2097
 
2076
- module_eval(<<'.,.,', 'parser.y', 475)
2077
- def _reduce_110(val, _values, result)
2098
+ module_eval(<<'.,.,', 'parser.y', 482)
2099
+ def _reduce_112(val, _values, result)
2078
2100
  sym = @grammar.find_symbol_by_id!(val[2])
2079
2101
  @prec_seen = true
2080
2102
  builder = val[0]
@@ -2085,70 +2107,70 @@ module_eval(<<'.,.,', 'parser.y', 475)
2085
2107
  end
2086
2108
  .,.,
2087
2109
 
2088
- module_eval(<<'.,.,', 'parser.y', 482)
2089
- def _reduce_111(val, _values, result)
2110
+ module_eval(<<'.,.,', 'parser.y', 489)
2111
+ def _reduce_113(val, _values, result)
2090
2112
  result = "option"
2091
2113
  result
2092
2114
  end
2093
2115
  .,.,
2094
2116
 
2095
- module_eval(<<'.,.,', 'parser.y', 483)
2096
- def _reduce_112(val, _values, result)
2117
+ module_eval(<<'.,.,', 'parser.y', 490)
2118
+ def _reduce_114(val, _values, result)
2097
2119
  result = "nonempty_list"
2098
2120
  result
2099
2121
  end
2100
2122
  .,.,
2101
2123
 
2102
- module_eval(<<'.,.,', 'parser.y', 484)
2103
- def _reduce_113(val, _values, result)
2124
+ module_eval(<<'.,.,', 'parser.y', 491)
2125
+ def _reduce_115(val, _values, result)
2104
2126
  result = "list"
2105
2127
  result
2106
2128
  end
2107
2129
  .,.,
2108
2130
 
2109
- module_eval(<<'.,.,', 'parser.y', 486)
2110
- def _reduce_114(val, _values, result)
2131
+ module_eval(<<'.,.,', 'parser.y', 493)
2132
+ def _reduce_116(val, _values, result)
2111
2133
  result = [val[0]]
2112
2134
  result
2113
2135
  end
2114
2136
  .,.,
2115
2137
 
2116
- module_eval(<<'.,.,', 'parser.y', 487)
2117
- def _reduce_115(val, _values, result)
2138
+ module_eval(<<'.,.,', 'parser.y', 494)
2139
+ def _reduce_117(val, _values, result)
2118
2140
  result = val[0].append(val[2])
2119
2141
  result
2120
2142
  end
2121
2143
  .,.,
2122
2144
 
2123
- module_eval(<<'.,.,', 'parser.y', 488)
2124
- def _reduce_116(val, _values, result)
2145
+ module_eval(<<'.,.,', 'parser.y', 495)
2146
+ def _reduce_118(val, _values, result)
2125
2147
  result = [Lrama::Lexer::Token::InstantiateRule.new(s_value: val[1].s_value, location: @lexer.location, args: val[0])]
2126
2148
  result
2127
2149
  end
2128
2150
  .,.,
2129
2151
 
2130
- module_eval(<<'.,.,', 'parser.y', 489)
2131
- def _reduce_117(val, _values, result)
2152
+ module_eval(<<'.,.,', 'parser.y', 496)
2153
+ def _reduce_119(val, _values, result)
2132
2154
  result = [Lrama::Lexer::Token::InstantiateRule.new(s_value: val[0].s_value, location: @lexer.location, args: val[2])]
2133
2155
  result
2134
2156
  end
2135
2157
  .,.,
2136
2158
 
2137
- # reduce 118 omitted
2159
+ # reduce 120 omitted
2138
2160
 
2139
- module_eval(<<'.,.,', 'parser.y', 492)
2140
- def _reduce_119(val, _values, result)
2161
+ module_eval(<<'.,.,', 'parser.y', 499)
2162
+ def _reduce_121(val, _values, result)
2141
2163
  result = val[1].s_value
2142
2164
  result
2143
2165
  end
2144
2166
  .,.,
2145
2167
 
2146
- # reduce 120 omitted
2168
+ # reduce 122 omitted
2147
2169
 
2148
- # reduce 121 omitted
2170
+ # reduce 123 omitted
2149
2171
 
2150
- module_eval(<<'.,.,', 'parser.y', 499)
2151
- def _reduce_122(val, _values, result)
2172
+ module_eval(<<'.,.,', 'parser.y', 506)
2173
+ def _reduce_124(val, _values, result)
2152
2174
  begin_c_declaration('\Z')
2153
2175
  @grammar.epilogue_first_lineno = @lexer.line + 1
2154
2176
 
@@ -2156,8 +2178,8 @@ module_eval(<<'.,.,', 'parser.y', 499)
2156
2178
  end
2157
2179
  .,.,
2158
2180
 
2159
- module_eval(<<'.,.,', 'parser.y', 504)
2160
- def _reduce_123(val, _values, result)
2181
+ module_eval(<<'.,.,', 'parser.y', 511)
2182
+ def _reduce_125(val, _values, result)
2161
2183
  end_c_declaration
2162
2184
  @grammar.epilogue = val[2].s_value
2163
2185
 
@@ -2165,44 +2187,44 @@ module_eval(<<'.,.,', 'parser.y', 504)
2165
2187
  end
2166
2188
  .,.,
2167
2189
 
2168
- # reduce 124 omitted
2169
-
2170
- # reduce 125 omitted
2171
-
2172
2190
  # reduce 126 omitted
2173
2191
 
2174
2192
  # reduce 127 omitted
2175
2193
 
2176
2194
  # reduce 128 omitted
2177
2195
 
2178
- module_eval(<<'.,.,', 'parser.y', 515)
2179
- def _reduce_129(val, _values, result)
2196
+ # reduce 129 omitted
2197
+
2198
+ # reduce 130 omitted
2199
+
2200
+ module_eval(<<'.,.,', 'parser.y', 522)
2201
+ def _reduce_131(val, _values, result)
2180
2202
  result = [val[0]]
2181
2203
  result
2182
2204
  end
2183
2205
  .,.,
2184
2206
 
2185
- module_eval(<<'.,.,', 'parser.y', 516)
2186
- def _reduce_130(val, _values, result)
2207
+ module_eval(<<'.,.,', 'parser.y', 523)
2208
+ def _reduce_132(val, _values, result)
2187
2209
  result = val[0].append(val[1])
2188
2210
  result
2189
2211
  end
2190
2212
  .,.,
2191
2213
 
2192
- # reduce 131 omitted
2214
+ # reduce 133 omitted
2193
2215
 
2194
- # reduce 132 omitted
2216
+ # reduce 134 omitted
2195
2217
 
2196
- module_eval(<<'.,.,', 'parser.y', 521)
2197
- def _reduce_133(val, _values, result)
2218
+ module_eval(<<'.,.,', 'parser.y', 528)
2219
+ def _reduce_135(val, _values, result)
2198
2220
  result = Lrama::Lexer::Token::Ident.new(s_value: val[0])
2199
2221
  result
2200
2222
  end
2201
2223
  .,.,
2202
2224
 
2203
- # reduce 134 omitted
2225
+ # reduce 136 omitted
2204
2226
 
2205
- # reduce 135 omitted
2227
+ # reduce 137 omitted
2206
2228
 
2207
2229
  def _reduce_none(val, _values, result)
2208
2230
  val[0]