fix generated builder: builders didn't have the generalizations registered
This commit is contained in:
parent
505061f31a
commit
03acd8dea4
@ -227,6 +227,15 @@ func (b *choiceBuilder) generate(w io.Writer, done map[string]bool) error {
|
|||||||
fprintf("name: \"%s\",", b.name)
|
fprintf("name: \"%s\",", b.name)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if len(b.generalizations) > 0 {
|
||||||
|
fprintf("generalizations: []int{")
|
||||||
|
for i := range b.generalizations {
|
||||||
|
fprintf("%d,", b.generalizations[i])
|
||||||
|
}
|
||||||
|
|
||||||
|
fprintf("},")
|
||||||
|
}
|
||||||
|
|
||||||
fprintf("};")
|
fprintf("};")
|
||||||
|
|
||||||
if len(b.options) > 0 {
|
if len(b.options) > 0 {
|
||||||
|
88
self/self.go
88
self/self.go
@ -1058,33 +1058,33 @@ func Parse(r io.Reader) (*Node, error) {
|
|||||||
p188.items = []parser{&p186, &p187, &p186}
|
p188.items = []parser{&p186, &p187, &p186}
|
||||||
var b188 = sequenceBuilder{id: 188, commit: 32, name: "syntax", ranges: [][]int{{0, -1}, {1, 1}, {0, -1}}}
|
var b188 = sequenceBuilder{id: 188, commit: 32, name: "syntax", ranges: [][]int{{0, -1}, {1, 1}, {0, -1}}}
|
||||||
var b186 = choiceBuilder{id: 186, commit: 2}
|
var b186 = choiceBuilder{id: 186, commit: 2}
|
||||||
var b185 = choiceBuilder{id: 185, commit: 70}
|
var b185 = choiceBuilder{id: 185, commit: 70, generalizations: []int{186}}
|
||||||
var b15 = choiceBuilder{id: 15, commit: 66}
|
var b15 = choiceBuilder{id: 15, commit: 66, generalizations: []int{185, 186}}
|
||||||
var b2 = sequenceBuilder{id: 2, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b2 = sequenceBuilder{id: 2, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{15, 185, 186}}
|
||||||
var b1 = charBuilder{}
|
var b1 = charBuilder{}
|
||||||
b2.items = []builder{&b1}
|
b2.items = []builder{&b1}
|
||||||
var b4 = sequenceBuilder{id: 4, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b4 = sequenceBuilder{id: 4, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{15, 185, 186}}
|
||||||
var b3 = charBuilder{}
|
var b3 = charBuilder{}
|
||||||
b4.items = []builder{&b3}
|
b4.items = []builder{&b3}
|
||||||
var b6 = sequenceBuilder{id: 6, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b6 = sequenceBuilder{id: 6, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{15, 185, 186}}
|
||||||
var b5 = charBuilder{}
|
var b5 = charBuilder{}
|
||||||
b6.items = []builder{&b5}
|
b6.items = []builder{&b5}
|
||||||
var b8 = sequenceBuilder{id: 8, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b8 = sequenceBuilder{id: 8, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{15, 185, 186}}
|
||||||
var b7 = charBuilder{}
|
var b7 = charBuilder{}
|
||||||
b8.items = []builder{&b7}
|
b8.items = []builder{&b7}
|
||||||
var b10 = sequenceBuilder{id: 10, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b10 = sequenceBuilder{id: 10, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{15, 185, 186}}
|
||||||
var b9 = charBuilder{}
|
var b9 = charBuilder{}
|
||||||
b10.items = []builder{&b9}
|
b10.items = []builder{&b9}
|
||||||
var b12 = sequenceBuilder{id: 12, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b12 = sequenceBuilder{id: 12, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{15, 185, 186}}
|
||||||
var b11 = charBuilder{}
|
var b11 = charBuilder{}
|
||||||
b12.items = []builder{&b11}
|
b12.items = []builder{&b11}
|
||||||
var b14 = sequenceBuilder{id: 14, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b14 = sequenceBuilder{id: 14, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{15, 185, 186}}
|
||||||
var b13 = charBuilder{}
|
var b13 = charBuilder{}
|
||||||
b14.items = []builder{&b13}
|
b14.items = []builder{&b13}
|
||||||
b15.options = []builder{&b2, &b4, &b6, &b8, &b10, &b12, &b14}
|
b15.options = []builder{&b2, &b4, &b6, &b8, &b10, &b12, &b14}
|
||||||
var b54 = sequenceBuilder{id: 54, commit: 72, name: "comment", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}}
|
var b54 = sequenceBuilder{id: 54, commit: 72, name: "comment", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}, generalizations: []int{185, 186}}
|
||||||
var b37 = choiceBuilder{id: 37, commit: 74}
|
var b37 = choiceBuilder{id: 37, commit: 74}
|
||||||
var b36 = sequenceBuilder{id: 36, commit: 74, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}}
|
var b36 = sequenceBuilder{id: 36, commit: 74, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}, generalizations: []int{37}}
|
||||||
var b33 = sequenceBuilder{id: 33, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
var b33 = sequenceBuilder{id: 33, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
||||||
var b31 = charBuilder{}
|
var b31 = charBuilder{}
|
||||||
var b32 = charBuilder{}
|
var b32 = charBuilder{}
|
||||||
@ -1093,13 +1093,13 @@ func Parse(r io.Reader) (*Node, error) {
|
|||||||
var b34 = charBuilder{}
|
var b34 = charBuilder{}
|
||||||
b35.items = []builder{&b34}
|
b35.items = []builder{&b34}
|
||||||
b36.items = []builder{&b33, &b35}
|
b36.items = []builder{&b33, &b35}
|
||||||
var b30 = sequenceBuilder{id: 30, commit: 74, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {1, 1}, {0, -1}, {1, 1}}}
|
var b30 = sequenceBuilder{id: 30, commit: 74, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{37}}
|
||||||
var b18 = sequenceBuilder{id: 18, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
var b18 = sequenceBuilder{id: 18, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
||||||
var b16 = charBuilder{}
|
var b16 = charBuilder{}
|
||||||
var b17 = charBuilder{}
|
var b17 = charBuilder{}
|
||||||
b18.items = []builder{&b16, &b17}
|
b18.items = []builder{&b16, &b17}
|
||||||
var b26 = choiceBuilder{id: 26, commit: 10}
|
var b26 = choiceBuilder{id: 26, commit: 10}
|
||||||
var b23 = sequenceBuilder{id: 23, commit: 10, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
var b23 = sequenceBuilder{id: 23, commit: 10, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}, generalizations: []int{26}}
|
||||||
var b20 = sequenceBuilder{id: 20, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b20 = sequenceBuilder{id: 20, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||||
var b19 = charBuilder{}
|
var b19 = charBuilder{}
|
||||||
b20.items = []builder{&b19}
|
b20.items = []builder{&b19}
|
||||||
@ -1107,7 +1107,7 @@ func Parse(r io.Reader) (*Node, error) {
|
|||||||
var b21 = charBuilder{}
|
var b21 = charBuilder{}
|
||||||
b22.items = []builder{&b21}
|
b22.items = []builder{&b21}
|
||||||
b23.items = []builder{&b20, &b22}
|
b23.items = []builder{&b20, &b22}
|
||||||
var b25 = sequenceBuilder{id: 25, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b25 = sequenceBuilder{id: 25, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{26}}
|
||||||
var b24 = charBuilder{}
|
var b24 = charBuilder{}
|
||||||
b25.items = []builder{&b24}
|
b25.items = []builder{&b24}
|
||||||
b26.options = []builder{&b23, &b25}
|
b26.options = []builder{&b23, &b25}
|
||||||
@ -1119,22 +1119,22 @@ func Parse(r io.Reader) (*Node, error) {
|
|||||||
b37.options = []builder{&b36, &b30}
|
b37.options = []builder{&b36, &b30}
|
||||||
var b53 = sequenceBuilder{id: 53, commit: 10, ranges: [][]int{{0, -1}, {0, 1}, {0, -1}, {1, 1}, {0, -1}, {0, 1}, {0, -1}, {1, 1}}}
|
var b53 = sequenceBuilder{id: 53, commit: 10, ranges: [][]int{{0, -1}, {0, 1}, {0, -1}, {1, 1}, {0, -1}, {0, 1}, {0, -1}, {1, 1}}}
|
||||||
var b50 = choiceBuilder{id: 50, commit: 74}
|
var b50 = choiceBuilder{id: 50, commit: 74}
|
||||||
var b39 = sequenceBuilder{id: 39, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b39 = sequenceBuilder{id: 39, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||||
var b38 = charBuilder{}
|
var b38 = charBuilder{}
|
||||||
b39.items = []builder{&b38}
|
b39.items = []builder{&b38}
|
||||||
var b41 = sequenceBuilder{id: 41, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b41 = sequenceBuilder{id: 41, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||||
var b40 = charBuilder{}
|
var b40 = charBuilder{}
|
||||||
b41.items = []builder{&b40}
|
b41.items = []builder{&b40}
|
||||||
var b43 = sequenceBuilder{id: 43, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b43 = sequenceBuilder{id: 43, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||||
var b42 = charBuilder{}
|
var b42 = charBuilder{}
|
||||||
b43.items = []builder{&b42}
|
b43.items = []builder{&b42}
|
||||||
var b45 = sequenceBuilder{id: 45, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b45 = sequenceBuilder{id: 45, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||||
var b44 = charBuilder{}
|
var b44 = charBuilder{}
|
||||||
b45.items = []builder{&b44}
|
b45.items = []builder{&b44}
|
||||||
var b47 = sequenceBuilder{id: 47, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b47 = sequenceBuilder{id: 47, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||||
var b46 = charBuilder{}
|
var b46 = charBuilder{}
|
||||||
b47.items = []builder{&b46}
|
b47.items = []builder{&b46}
|
||||||
var b49 = sequenceBuilder{id: 49, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b49 = sequenceBuilder{id: 49, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||||
var b48 = charBuilder{}
|
var b48 = charBuilder{}
|
||||||
b49.items = []builder{&b48}
|
b49.items = []builder{&b48}
|
||||||
b50.options = []builder{&b39, &b41, &b43, &b45, &b47, &b49}
|
b50.options = []builder{&b39, &b41, &b43, &b45, &b47, &b49}
|
||||||
@ -1156,7 +1156,7 @@ func Parse(r io.Reader) (*Node, error) {
|
|||||||
var b176 = sequenceBuilder{id: 176, commit: 66, ranges: [][]int{{1, 1}, {0, 1}}}
|
var b176 = sequenceBuilder{id: 176, commit: 66, ranges: [][]int{{1, 1}, {0, 1}}}
|
||||||
var b169 = sequenceBuilder{id: 169, commit: 64, name: "definition", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}, {1, 1}}}
|
var b169 = sequenceBuilder{id: 169, commit: 64, name: "definition", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}, {1, 1}}}
|
||||||
var b166 = sequenceBuilder{id: 166, commit: 74, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}}
|
var b166 = sequenceBuilder{id: 166, commit: 74, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}}
|
||||||
var b92 = sequenceBuilder{id: 92, commit: 72, name: "symbol", ranges: [][]int{{1, -1}, {1, -1}}}
|
var b92 = sequenceBuilder{id: 92, commit: 72, name: "symbol", ranges: [][]int{{1, -1}, {1, -1}}, generalizations: []int{133, 123, 127}}
|
||||||
var b91 = sequenceBuilder{id: 91, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b91 = sequenceBuilder{id: 91, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||||
var b90 = charBuilder{}
|
var b90 = charBuilder{}
|
||||||
b91.items = []builder{&b90}
|
b91.items = []builder{&b90}
|
||||||
@ -1166,24 +1166,24 @@ func Parse(r io.Reader) (*Node, error) {
|
|||||||
var b163 = charBuilder{}
|
var b163 = charBuilder{}
|
||||||
b164.items = []builder{&b163}
|
b164.items = []builder{&b163}
|
||||||
var b162 = choiceBuilder{id: 162, commit: 66}
|
var b162 = choiceBuilder{id: 162, commit: 66}
|
||||||
var b139 = sequenceBuilder{id: 139, commit: 72, name: "alias", allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
var b139 = sequenceBuilder{id: 139, commit: 72, name: "alias", allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}}, generalizations: []int{162}}
|
||||||
var b134 = charBuilder{}
|
var b134 = charBuilder{}
|
||||||
var b135 = charBuilder{}
|
var b135 = charBuilder{}
|
||||||
var b136 = charBuilder{}
|
var b136 = charBuilder{}
|
||||||
var b137 = charBuilder{}
|
var b137 = charBuilder{}
|
||||||
var b138 = charBuilder{}
|
var b138 = charBuilder{}
|
||||||
b139.items = []builder{&b134, &b135, &b136, &b137, &b138}
|
b139.items = []builder{&b134, &b135, &b136, &b137, &b138}
|
||||||
var b142 = sequenceBuilder{id: 142, commit: 72, name: "ws", allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
var b142 = sequenceBuilder{id: 142, commit: 72, name: "ws", allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}, generalizations: []int{162}}
|
||||||
var b140 = charBuilder{}
|
var b140 = charBuilder{}
|
||||||
var b141 = charBuilder{}
|
var b141 = charBuilder{}
|
||||||
b142.items = []builder{&b140, &b141}
|
b142.items = []builder{&b140, &b141}
|
||||||
var b147 = sequenceBuilder{id: 147, commit: 72, name: "nows", allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
var b147 = sequenceBuilder{id: 147, commit: 72, name: "nows", allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}}, generalizations: []int{162}}
|
||||||
var b143 = charBuilder{}
|
var b143 = charBuilder{}
|
||||||
var b144 = charBuilder{}
|
var b144 = charBuilder{}
|
||||||
var b145 = charBuilder{}
|
var b145 = charBuilder{}
|
||||||
var b146 = charBuilder{}
|
var b146 = charBuilder{}
|
||||||
b147.items = []builder{&b143, &b144, &b145, &b146}
|
b147.items = []builder{&b143, &b144, &b145, &b146}
|
||||||
var b156 = sequenceBuilder{id: 156, commit: 72, name: "failpass", allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
var b156 = sequenceBuilder{id: 156, commit: 72, name: "failpass", allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}}, generalizations: []int{162}}
|
||||||
var b148 = charBuilder{}
|
var b148 = charBuilder{}
|
||||||
var b149 = charBuilder{}
|
var b149 = charBuilder{}
|
||||||
var b150 = charBuilder{}
|
var b150 = charBuilder{}
|
||||||
@ -1193,7 +1193,7 @@ func Parse(r io.Reader) (*Node, error) {
|
|||||||
var b154 = charBuilder{}
|
var b154 = charBuilder{}
|
||||||
var b155 = charBuilder{}
|
var b155 = charBuilder{}
|
||||||
b156.items = []builder{&b148, &b149, &b150, &b151, &b152, &b153, &b154, &b155}
|
b156.items = []builder{&b148, &b149, &b150, &b151, &b152, &b153, &b154, &b155}
|
||||||
var b161 = sequenceBuilder{id: 161, commit: 72, name: "root", allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
var b161 = sequenceBuilder{id: 161, commit: 72, name: "root", allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}}, generalizations: []int{162}}
|
||||||
var b157 = charBuilder{}
|
var b157 = charBuilder{}
|
||||||
var b158 = charBuilder{}
|
var b158 = charBuilder{}
|
||||||
var b159 = charBuilder{}
|
var b159 = charBuilder{}
|
||||||
@ -1206,11 +1206,11 @@ func Parse(r io.Reader) (*Node, error) {
|
|||||||
var b167 = charBuilder{}
|
var b167 = charBuilder{}
|
||||||
b168.items = []builder{&b167}
|
b168.items = []builder{&b167}
|
||||||
var b133 = choiceBuilder{id: 133, commit: 66}
|
var b133 = choiceBuilder{id: 133, commit: 66}
|
||||||
var b89 = choiceBuilder{id: 89, commit: 66}
|
var b89 = choiceBuilder{id: 89, commit: 66, generalizations: []int{133, 123, 127}}
|
||||||
var b56 = sequenceBuilder{id: 56, commit: 72, name: "any-char", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b56 = sequenceBuilder{id: 56, commit: 72, name: "any-char", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{89, 133, 123, 127}}
|
||||||
var b55 = charBuilder{}
|
var b55 = charBuilder{}
|
||||||
b56.items = []builder{&b55}
|
b56.items = []builder{&b55}
|
||||||
var b75 = sequenceBuilder{id: 75, commit: 72, name: "char-class", ranges: [][]int{{1, 1}, {0, 1}, {0, -1}, {1, 1}, {1, 1}, {0, 1}, {0, -1}, {1, 1}}}
|
var b75 = sequenceBuilder{id: 75, commit: 72, name: "char-class", ranges: [][]int{{1, 1}, {0, 1}, {0, -1}, {1, 1}, {1, 1}, {0, 1}, {0, -1}, {1, 1}}, generalizations: []int{89, 133, 123, 127}}
|
||||||
var b71 = sequenceBuilder{id: 71, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b71 = sequenceBuilder{id: 71, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||||
var b70 = charBuilder{}
|
var b70 = charBuilder{}
|
||||||
b71.items = []builder{&b70}
|
b71.items = []builder{&b70}
|
||||||
@ -1218,11 +1218,11 @@ func Parse(r io.Reader) (*Node, error) {
|
|||||||
var b57 = charBuilder{}
|
var b57 = charBuilder{}
|
||||||
b58.items = []builder{&b57}
|
b58.items = []builder{&b57}
|
||||||
var b72 = choiceBuilder{id: 72, commit: 10}
|
var b72 = choiceBuilder{id: 72, commit: 10}
|
||||||
var b66 = choiceBuilder{id: 66, commit: 72, name: "class-char"}
|
var b66 = choiceBuilder{id: 66, commit: 72, name: "class-char", generalizations: []int{72}}
|
||||||
var b60 = sequenceBuilder{id: 60, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b60 = sequenceBuilder{id: 60, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{66, 72}}
|
||||||
var b59 = charBuilder{}
|
var b59 = charBuilder{}
|
||||||
b60.items = []builder{&b59}
|
b60.items = []builder{&b59}
|
||||||
var b65 = sequenceBuilder{id: 65, commit: 10, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
var b65 = sequenceBuilder{id: 65, commit: 10, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}, generalizations: []int{66, 72}}
|
||||||
var b62 = sequenceBuilder{id: 62, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b62 = sequenceBuilder{id: 62, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||||
var b61 = charBuilder{}
|
var b61 = charBuilder{}
|
||||||
b62.items = []builder{&b61}
|
b62.items = []builder{&b61}
|
||||||
@ -1231,7 +1231,7 @@ func Parse(r io.Reader) (*Node, error) {
|
|||||||
b64.items = []builder{&b63}
|
b64.items = []builder{&b63}
|
||||||
b65.items = []builder{&b62, &b64}
|
b65.items = []builder{&b62, &b64}
|
||||||
b66.options = []builder{&b60, &b65}
|
b66.options = []builder{&b60, &b65}
|
||||||
var b69 = sequenceBuilder{id: 69, commit: 72, name: "char-range", ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
var b69 = sequenceBuilder{id: 69, commit: 72, name: "char-range", ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}}, generalizations: []int{72}}
|
||||||
var b68 = sequenceBuilder{id: 68, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b68 = sequenceBuilder{id: 68, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||||
var b67 = charBuilder{}
|
var b67 = charBuilder{}
|
||||||
b68.items = []builder{&b67}
|
b68.items = []builder{&b67}
|
||||||
@ -1241,15 +1241,15 @@ func Parse(r io.Reader) (*Node, error) {
|
|||||||
var b73 = charBuilder{}
|
var b73 = charBuilder{}
|
||||||
b74.items = []builder{&b73}
|
b74.items = []builder{&b73}
|
||||||
b75.items = []builder{&b71, &b58, &b72, &b74}
|
b75.items = []builder{&b71, &b58, &b72, &b74}
|
||||||
var b88 = sequenceBuilder{id: 88, commit: 72, name: "char-sequence", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {1, 1}, {0, -1}, {1, 1}}}
|
var b88 = sequenceBuilder{id: 88, commit: 72, name: "char-sequence", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{89, 133, 123, 127}}
|
||||||
var b85 = sequenceBuilder{id: 85, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b85 = sequenceBuilder{id: 85, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||||
var b84 = charBuilder{}
|
var b84 = charBuilder{}
|
||||||
b85.items = []builder{&b84}
|
b85.items = []builder{&b84}
|
||||||
var b83 = choiceBuilder{id: 83, commit: 72, name: "sequence-char"}
|
var b83 = choiceBuilder{id: 83, commit: 72, name: "sequence-char"}
|
||||||
var b77 = sequenceBuilder{id: 77, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b77 = sequenceBuilder{id: 77, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{83}}
|
||||||
var b76 = charBuilder{}
|
var b76 = charBuilder{}
|
||||||
b77.items = []builder{&b76}
|
b77.items = []builder{&b76}
|
||||||
var b82 = sequenceBuilder{id: 82, commit: 10, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
var b82 = sequenceBuilder{id: 82, commit: 10, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}, generalizations: []int{83}}
|
||||||
var b79 = sequenceBuilder{id: 79, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b79 = sequenceBuilder{id: 79, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||||
var b78 = charBuilder{}
|
var b78 = charBuilder{}
|
||||||
b79.items = []builder{&b78}
|
b79.items = []builder{&b78}
|
||||||
@ -1263,7 +1263,7 @@ func Parse(r io.Reader) (*Node, error) {
|
|||||||
b87.items = []builder{&b86}
|
b87.items = []builder{&b86}
|
||||||
b88.items = []builder{&b85, &b83, &b87}
|
b88.items = []builder{&b85, &b83, &b87}
|
||||||
b89.options = []builder{&b56, &b75, &b88}
|
b89.options = []builder{&b56, &b75, &b88}
|
||||||
var b97 = sequenceBuilder{id: 97, commit: 66, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}, {1, 1}}}
|
var b97 = sequenceBuilder{id: 97, commit: 66, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{133, 123, 127}}
|
||||||
var b94 = sequenceBuilder{id: 94, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b94 = sequenceBuilder{id: 94, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||||
var b93 = charBuilder{}
|
var b93 = charBuilder{}
|
||||||
b94.items = []builder{&b93}
|
b94.items = []builder{&b93}
|
||||||
@ -1271,12 +1271,12 @@ func Parse(r io.Reader) (*Node, error) {
|
|||||||
var b95 = charBuilder{}
|
var b95 = charBuilder{}
|
||||||
b96.items = []builder{&b95}
|
b96.items = []builder{&b95}
|
||||||
b97.items = []builder{&b94, &b186, &b133, &b186, &b96}
|
b97.items = []builder{&b94, &b186, &b133, &b186, &b96}
|
||||||
var b126 = sequenceBuilder{id: 126, commit: 64, name: "sequence", ranges: [][]int{{1, 1}, {0, -1}}}
|
var b126 = sequenceBuilder{id: 126, commit: 64, name: "sequence", ranges: [][]int{{1, 1}, {0, -1}}, generalizations: []int{133, 127}}
|
||||||
var b124 = sequenceBuilder{id: 124, commit: 72, name: "item", ranges: [][]int{{1, 1}, {0, 1}, {1, 1}, {0, 1}}}
|
var b124 = sequenceBuilder{id: 124, commit: 72, name: "item", ranges: [][]int{{1, 1}, {0, 1}, {1, 1}, {0, 1}}}
|
||||||
var b123 = choiceBuilder{id: 123, commit: 10}
|
var b123 = choiceBuilder{id: 123, commit: 10}
|
||||||
b123.options = []builder{&b89, &b92, &b97}
|
b123.options = []builder{&b89, &b92, &b97}
|
||||||
var b122 = choiceBuilder{id: 122, commit: 66}
|
var b122 = choiceBuilder{id: 122, commit: 66}
|
||||||
var b106 = sequenceBuilder{id: 106, commit: 64, name: "count-quantifier", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}, {1, 1}}}
|
var b106 = sequenceBuilder{id: 106, commit: 64, name: "count-quantifier", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{122}}
|
||||||
var b103 = sequenceBuilder{id: 103, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b103 = sequenceBuilder{id: 103, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||||
var b102 = charBuilder{}
|
var b102 = charBuilder{}
|
||||||
b103.items = []builder{&b102}
|
b103.items = []builder{&b102}
|
||||||
@ -1291,7 +1291,7 @@ func Parse(r io.Reader) (*Node, error) {
|
|||||||
var b104 = charBuilder{}
|
var b104 = charBuilder{}
|
||||||
b105.items = []builder{&b104}
|
b105.items = []builder{&b104}
|
||||||
b106.items = []builder{&b103, &b186, &b101, &b186, &b105}
|
b106.items = []builder{&b103, &b186, &b101, &b186, &b105}
|
||||||
var b115 = sequenceBuilder{id: 115, commit: 64, name: "range-quantifier", ranges: [][]int{{1, 1}, {0, -1}, {0, 1}, {0, -1}, {1, 1}, {0, -1}, {0, 1}, {0, -1}, {1, 1}}}
|
var b115 = sequenceBuilder{id: 115, commit: 64, name: "range-quantifier", ranges: [][]int{{1, 1}, {0, -1}, {0, 1}, {0, -1}, {1, 1}, {0, -1}, {0, 1}, {0, -1}, {1, 1}}, generalizations: []int{122}}
|
||||||
var b110 = sequenceBuilder{id: 110, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b110 = sequenceBuilder{id: 110, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||||
var b109 = charBuilder{}
|
var b109 = charBuilder{}
|
||||||
b110.items = []builder{&b109}
|
b110.items = []builder{&b109}
|
||||||
@ -1306,13 +1306,13 @@ func Parse(r io.Reader) (*Node, error) {
|
|||||||
var b113 = charBuilder{}
|
var b113 = charBuilder{}
|
||||||
b114.items = []builder{&b113}
|
b114.items = []builder{&b113}
|
||||||
b115.items = []builder{&b110, &b186, &b107, &b186, &b112, &b186, &b108, &b186, &b114}
|
b115.items = []builder{&b110, &b186, &b107, &b186, &b112, &b186, &b108, &b186, &b114}
|
||||||
var b117 = sequenceBuilder{id: 117, commit: 72, name: "one-or-more", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b117 = sequenceBuilder{id: 117, commit: 72, name: "one-or-more", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{122}}
|
||||||
var b116 = charBuilder{}
|
var b116 = charBuilder{}
|
||||||
b117.items = []builder{&b116}
|
b117.items = []builder{&b116}
|
||||||
var b119 = sequenceBuilder{id: 119, commit: 72, name: "zero-or-more", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b119 = sequenceBuilder{id: 119, commit: 72, name: "zero-or-more", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{122}}
|
||||||
var b118 = charBuilder{}
|
var b118 = charBuilder{}
|
||||||
b119.items = []builder{&b118}
|
b119.items = []builder{&b118}
|
||||||
var b121 = sequenceBuilder{id: 121, commit: 72, name: "zero-or-one", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
var b121 = sequenceBuilder{id: 121, commit: 72, name: "zero-or-one", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{122}}
|
||||||
var b120 = charBuilder{}
|
var b120 = charBuilder{}
|
||||||
b121.items = []builder{&b120}
|
b121.items = []builder{&b120}
|
||||||
b122.options = []builder{&b106, &b115, &b117, &b119, &b121}
|
b122.options = []builder{&b106, &b115, &b117, &b119, &b121}
|
||||||
@ -1320,7 +1320,7 @@ func Parse(r io.Reader) (*Node, error) {
|
|||||||
var b125 = sequenceBuilder{id: 125, commit: 2, ranges: [][]int{{0, -1}, {1, 1}}}
|
var b125 = sequenceBuilder{id: 125, commit: 2, ranges: [][]int{{0, -1}, {1, 1}}}
|
||||||
b125.items = []builder{&b186, &b124}
|
b125.items = []builder{&b186, &b124}
|
||||||
b126.items = []builder{&b124, &b125}
|
b126.items = []builder{&b124, &b125}
|
||||||
var b132 = sequenceBuilder{id: 132, commit: 64, name: "choice", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}}
|
var b132 = sequenceBuilder{id: 132, commit: 64, name: "choice", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}, generalizations: []int{133}}
|
||||||
var b127 = choiceBuilder{id: 127, commit: 66}
|
var b127 = choiceBuilder{id: 127, commit: 66}
|
||||||
b127.options = []builder{&b89, &b92, &b97, &b126}
|
b127.options = []builder{&b89, &b92, &b97, &b126}
|
||||||
var b130 = sequenceBuilder{id: 130, commit: 2, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}}}
|
var b130 = sequenceBuilder{id: 130, commit: 2, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}}}
|
||||||
|
@ -394,6 +394,15 @@ func (b *sequenceBuilder) generate(w io.Writer, done map[string]bool) error {
|
|||||||
fprintf("},")
|
fprintf("},")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if len(b.generalizations) > 0 {
|
||||||
|
fprintf("generalizations: []int{")
|
||||||
|
for i := range b.generalizations {
|
||||||
|
fprintf("%d,", b.generalizations[i])
|
||||||
|
}
|
||||||
|
|
||||||
|
fprintf("},")
|
||||||
|
}
|
||||||
|
|
||||||
fprintf("};")
|
fprintf("};")
|
||||||
|
|
||||||
if len(b.items) > 0 {
|
if len(b.items) > 0 {
|
||||||
|
Loading…
Reference in New Issue
Block a user