reformat self syntax
This commit is contained in:
parent
e025778538
commit
bfa71e7a73
@ -848,66 +848,66 @@ func Parse(r io.Reader) (*Node, error) {
|
||||
p14.items = []parser{&p13}
|
||||
p15.options = []parser{&p2, &p4, &p6, &p8, &p10, &p12, &p14}
|
||||
var p54 = sequenceParser{id: 54, commit: 264, name: "comment", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}, generalizations: []int{193, 194}}
|
||||
var p37 = choiceParser{id: 37, commit: 266, name: "comment-segment"}
|
||||
var p36 = sequenceParser{id: 36, commit: 266, name: "line-comment", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}, generalizations: []int{37}}
|
||||
var p33 = sequenceParser{id: 33, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
||||
var p31 = charParser{id: 31, chars: []rune{47}}
|
||||
var p32 = charParser{id: 32, chars: []rune{47}}
|
||||
p33.items = []parser{&p31, &p32}
|
||||
var p50 = choiceParser{id: 50, commit: 266, name: "comment-segment"}
|
||||
var p49 = sequenceParser{id: 49, commit: 266, name: "line-comment", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}, generalizations: []int{50}}
|
||||
var p46 = sequenceParser{id: 46, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
||||
var p44 = charParser{id: 44, chars: []rune{47}}
|
||||
var p45 = charParser{id: 45, chars: []rune{47}}
|
||||
p46.items = []parser{&p44, &p45}
|
||||
var p48 = sequenceParser{id: 48, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p47 = charParser{id: 47, not: true, chars: []rune{10}}
|
||||
p48.items = []parser{&p47}
|
||||
p49.items = []parser{&p46, &p48}
|
||||
var p43 = sequenceParser{id: 43, commit: 266, name: "block-comment", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{50}}
|
||||
var p31 = sequenceParser{id: 31, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
||||
var p29 = charParser{id: 29, chars: []rune{47}}
|
||||
var p30 = charParser{id: 30, chars: []rune{42}}
|
||||
p31.items = []parser{&p29, &p30}
|
||||
var p39 = choiceParser{id: 39, commit: 10}
|
||||
var p36 = sequenceParser{id: 36, commit: 10, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}, generalizations: []int{39}}
|
||||
var p33 = sequenceParser{id: 33, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p32 = charParser{id: 32, chars: []rune{42}}
|
||||
p33.items = []parser{&p32}
|
||||
var p35 = sequenceParser{id: 35, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p34 = charParser{id: 34, not: true, chars: []rune{10}}
|
||||
var p34 = charParser{id: 34, not: true, chars: []rune{47}}
|
||||
p35.items = []parser{&p34}
|
||||
p36.items = []parser{&p33, &p35}
|
||||
var p30 = sequenceParser{id: 30, commit: 266, name: "block-comment", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{37}}
|
||||
var p18 = sequenceParser{id: 18, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
||||
var p16 = charParser{id: 16, chars: []rune{47}}
|
||||
var p17 = charParser{id: 17, chars: []rune{42}}
|
||||
p18.items = []parser{&p16, &p17}
|
||||
var p26 = choiceParser{id: 26, commit: 10}
|
||||
var p23 = sequenceParser{id: 23, commit: 10, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}, generalizations: []int{26}}
|
||||
var p20 = sequenceParser{id: 20, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p19 = charParser{id: 19, chars: []rune{42}}
|
||||
p20.items = []parser{&p19}
|
||||
var p22 = sequenceParser{id: 22, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p21 = charParser{id: 21, not: true, chars: []rune{47}}
|
||||
p22.items = []parser{&p21}
|
||||
p23.items = []parser{&p20, &p22}
|
||||
var p25 = sequenceParser{id: 25, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{26}}
|
||||
var p24 = charParser{id: 24, not: true, chars: []rune{42}}
|
||||
p25.items = []parser{&p24}
|
||||
p26.options = []parser{&p23, &p25}
|
||||
var p29 = sequenceParser{id: 29, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
||||
var p27 = charParser{id: 27, chars: []rune{42}}
|
||||
var p28 = charParser{id: 28, chars: []rune{47}}
|
||||
p29.items = []parser{&p27, &p28}
|
||||
p30.items = []parser{&p18, &p26, &p29}
|
||||
p37.options = []parser{&p36, &p30}
|
||||
var p38 = sequenceParser{id: 38, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{39}}
|
||||
var p37 = charParser{id: 37, not: true, chars: []rune{42}}
|
||||
p38.items = []parser{&p37}
|
||||
p39.options = []parser{&p36, &p38}
|
||||
var p42 = sequenceParser{id: 42, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
||||
var p40 = charParser{id: 40, chars: []rune{42}}
|
||||
var p41 = charParser{id: 41, chars: []rune{47}}
|
||||
p42.items = []parser{&p40, &p41}
|
||||
p43.items = []parser{&p31, &p39, &p42}
|
||||
p50.options = []parser{&p49, &p43}
|
||||
var p53 = sequenceParser{id: 53, commit: 10, ranges: [][]int{{0, -1}, {0, 1}, {0, -1}, {1, 1}, {0, -1}, {0, 1}, {0, -1}, {1, 1}}}
|
||||
var p50 = choiceParser{id: 50, commit: 266, name: "ws-no-nl"}
|
||||
var p39 = sequenceParser{id: 39, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||
var p38 = charParser{id: 38, chars: []rune{32}}
|
||||
p39.items = []parser{&p38}
|
||||
var p41 = sequenceParser{id: 41, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||
var p40 = charParser{id: 40, chars: []rune{9}}
|
||||
p41.items = []parser{&p40}
|
||||
var p43 = sequenceParser{id: 43, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||
var p42 = charParser{id: 42, chars: []rune{8}}
|
||||
p43.items = []parser{&p42}
|
||||
var p45 = sequenceParser{id: 45, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||
var p44 = charParser{id: 44, chars: []rune{12}}
|
||||
p45.items = []parser{&p44}
|
||||
var p47 = sequenceParser{id: 47, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||
var p46 = charParser{id: 46, chars: []rune{13}}
|
||||
p47.items = []parser{&p46}
|
||||
var p49 = sequenceParser{id: 49, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||
var p48 = charParser{id: 48, chars: []rune{11}}
|
||||
p49.items = []parser{&p48}
|
||||
p50.options = []parser{&p39, &p41, &p43, &p45, &p47, &p49}
|
||||
var p28 = choiceParser{id: 28, commit: 266, name: "ws-no-nl"}
|
||||
var p17 = sequenceParser{id: 17, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{28}}
|
||||
var p16 = charParser{id: 16, chars: []rune{32}}
|
||||
p17.items = []parser{&p16}
|
||||
var p19 = sequenceParser{id: 19, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{28}}
|
||||
var p18 = charParser{id: 18, chars: []rune{9}}
|
||||
p19.items = []parser{&p18}
|
||||
var p21 = sequenceParser{id: 21, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{28}}
|
||||
var p20 = charParser{id: 20, chars: []rune{8}}
|
||||
p21.items = []parser{&p20}
|
||||
var p23 = sequenceParser{id: 23, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{28}}
|
||||
var p22 = charParser{id: 22, chars: []rune{12}}
|
||||
p23.items = []parser{&p22}
|
||||
var p25 = sequenceParser{id: 25, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{28}}
|
||||
var p24 = charParser{id: 24, chars: []rune{13}}
|
||||
p25.items = []parser{&p24}
|
||||
var p27 = sequenceParser{id: 27, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{28}}
|
||||
var p26 = charParser{id: 26, chars: []rune{11}}
|
||||
p27.items = []parser{&p26}
|
||||
p28.options = []parser{&p17, &p19, &p21, &p23, &p25, &p27}
|
||||
var p52 = sequenceParser{id: 52, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p51 = charParser{id: 51, chars: []rune{10}}
|
||||
p52.items = []parser{&p51}
|
||||
p53.items = []parser{&p50, &p52, &p50, &p37}
|
||||
p54.items = []parser{&p37, &p53}
|
||||
p53.items = []parser{&p28, &p52, &p28, &p50}
|
||||
p54.items = []parser{&p50, &p53}
|
||||
p193.options = []parser{&p15, &p54}
|
||||
p194.options = []parser{&p193}
|
||||
var p195 = sequenceParser{id: 195, commit: 258, name: "syntax:wsroot", ranges: [][]int{{0, 1}, {0, -1}, {0, 1}, {0, 1}}}
|
||||
@ -921,7 +921,7 @@ func Parse(r io.Reader) (*Node, error) {
|
||||
var p184 = sequenceParser{id: 184, commit: 258, name: "definitions", ranges: [][]int{{1, 1}, {0, 1}}}
|
||||
var p177 = sequenceParser{id: 177, commit: 256, name: "definition", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}, {1, 1}}}
|
||||
var p174 = sequenceParser{id: 174, commit: 266, name: "definition-name", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}}
|
||||
var p92 = sequenceParser{id: 92, commit: 264, name: "symbol", ranges: [][]int{{1, -1}, {1, -1}}, generalizations: []int{133, 123, 127}}
|
||||
var p92 = sequenceParser{id: 92, commit: 264, name: "symbol", ranges: [][]int{{1, -1}, {1, -1}}, generalizations: []int{98, 124, 128}}
|
||||
var p91 = sequenceParser{id: 91, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p90 = charParser{id: 90, not: true, chars: []rune{92, 32, 10, 9, 8, 12, 13, 11, 47, 46, 91, 93, 34, 123, 125, 94, 43, 42, 63, 124, 40, 41, 58, 61, 59}}
|
||||
p91.items = []parser{&p90}
|
||||
@ -980,12 +980,12 @@ func Parse(r io.Reader) (*Node, error) {
|
||||
var p176 = sequenceParser{id: 176, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p175 = charParser{id: 175, chars: []rune{61}}
|
||||
p176.items = []parser{&p175}
|
||||
var p133 = choiceParser{id: 133, commit: 258, name: "expression"}
|
||||
var p89 = choiceParser{id: 89, commit: 258, name: "terminal", generalizations: []int{133, 123, 127}}
|
||||
var p56 = sequenceParser{id: 56, commit: 264, name: "any-char", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{89, 133, 123, 127}}
|
||||
var p98 = choiceParser{id: 98, commit: 258, name: "expression"}
|
||||
var p89 = choiceParser{id: 89, commit: 258, name: "terminal", generalizations: []int{98, 124, 128}}
|
||||
var p56 = sequenceParser{id: 56, commit: 264, name: "any-char", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{89, 98, 124, 128}}
|
||||
var p55 = charParser{id: 55, chars: []rune{46}}
|
||||
p56.items = []parser{&p55}
|
||||
var p75 = sequenceParser{id: 75, commit: 264, 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 p75 = sequenceParser{id: 75, commit: 264, name: "char-class", ranges: [][]int{{1, 1}, {0, 1}, {0, -1}, {1, 1}, {1, 1}, {0, 1}, {0, -1}, {1, 1}}, generalizations: []int{89, 98, 124, 128}}
|
||||
var p71 = sequenceParser{id: 71, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p70 = charParser{id: 70, chars: []rune{91}}
|
||||
p71.items = []parser{&p70}
|
||||
@ -1016,7 +1016,7 @@ func Parse(r io.Reader) (*Node, error) {
|
||||
var p73 = charParser{id: 73, chars: []rune{93}}
|
||||
p74.items = []parser{&p73}
|
||||
p75.items = []parser{&p71, &p58, &p72, &p74}
|
||||
var p88 = sequenceParser{id: 88, commit: 264, name: "char-sequence", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{89, 133, 123, 127}}
|
||||
var p88 = sequenceParser{id: 88, commit: 264, name: "char-sequence", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{89, 98, 124, 128}}
|
||||
var p85 = sequenceParser{id: 85, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p84 = charParser{id: 84, chars: []rune{34}}
|
||||
p85.items = []parser{&p84}
|
||||
@ -1038,76 +1038,76 @@ func Parse(r io.Reader) (*Node, error) {
|
||||
p87.items = []parser{&p86}
|
||||
p88.items = []parser{&p85, &p83, &p87}
|
||||
p89.options = []parser{&p56, &p75, &p88}
|
||||
var p97 = sequenceParser{id: 97, commit: 258, name: "group", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{133, 123, 127}}
|
||||
var p97 = sequenceParser{id: 97, commit: 258, name: "group", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{98, 124, 128}}
|
||||
var p94 = sequenceParser{id: 94, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p93 = charParser{id: 93, chars: []rune{40}}
|
||||
p94.items = []parser{&p93}
|
||||
var p96 = sequenceParser{id: 96, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p95 = charParser{id: 95, chars: []rune{41}}
|
||||
p96.items = []parser{&p95}
|
||||
p97.items = []parser{&p94, &p194, &p133, &p194, &p96}
|
||||
var p126 = sequenceParser{id: 126, commit: 256, name: "sequence", ranges: [][]int{{1, 1}, {0, -1}}, generalizations: []int{133, 127}}
|
||||
var p124 = sequenceParser{id: 124, commit: 264, name: "item", ranges: [][]int{{1, 1}, {0, 1}, {1, 1}, {0, 1}}}
|
||||
var p123 = choiceParser{id: 123, commit: 10}
|
||||
p123.options = []parser{&p89, &p92, &p97}
|
||||
var p122 = choiceParser{id: 122, commit: 258, name: "quantity"}
|
||||
var p106 = sequenceParser{id: 106, commit: 256, name: "count-quantifier", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{122}}
|
||||
var p103 = sequenceParser{id: 103, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p102 = charParser{id: 102, chars: []rune{123}}
|
||||
p103.items = []parser{&p102}
|
||||
var p101 = sequenceParser{id: 101, commit: 256, name: "count", ranges: [][]int{{1, 1}}}
|
||||
var p100 = sequenceParser{id: 100, commit: 266, name: "number", ranges: [][]int{{1, -1}, {1, -1}}}
|
||||
var p99 = sequenceParser{id: 99, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p98 = charParser{id: 98, ranges: [][]rune{{48, 57}}}
|
||||
p99.items = []parser{&p98}
|
||||
p97.items = []parser{&p94, &p194, &p98, &p194, &p96}
|
||||
var p127 = sequenceParser{id: 127, commit: 256, name: "sequence", ranges: [][]int{{1, 1}, {0, -1}}, generalizations: []int{98, 128}}
|
||||
var p125 = sequenceParser{id: 125, commit: 264, name: "item", ranges: [][]int{{1, 1}, {0, 1}, {1, 1}, {0, 1}}}
|
||||
var p124 = choiceParser{id: 124, commit: 10}
|
||||
p124.options = []parser{&p89, &p92, &p97}
|
||||
var p123 = choiceParser{id: 123, commit: 258, name: "quantity"}
|
||||
var p107 = sequenceParser{id: 107, commit: 256, name: "count-quantifier", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{123}}
|
||||
var p104 = sequenceParser{id: 104, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p103 = charParser{id: 103, chars: []rune{123}}
|
||||
p104.items = []parser{&p103}
|
||||
var p102 = sequenceParser{id: 102, commit: 256, name: "count", ranges: [][]int{{1, 1}}}
|
||||
var p101 = sequenceParser{id: 101, commit: 266, name: "number", ranges: [][]int{{1, -1}, {1, -1}}}
|
||||
var p100 = sequenceParser{id: 100, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p99 = charParser{id: 99, ranges: [][]rune{{48, 57}}}
|
||||
p100.items = []parser{&p99}
|
||||
p101.items = []parser{&p100}
|
||||
var p105 = sequenceParser{id: 105, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p104 = charParser{id: 104, chars: []rune{125}}
|
||||
p105.items = []parser{&p104}
|
||||
p106.items = []parser{&p103, &p194, &p101, &p194, &p105}
|
||||
var p115 = sequenceParser{id: 115, commit: 256, 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 p110 = sequenceParser{id: 110, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p109 = charParser{id: 109, chars: []rune{123}}
|
||||
p110.items = []parser{&p109}
|
||||
var p107 = sequenceParser{id: 107, commit: 256, name: "range-from", ranges: [][]int{{1, 1}}}
|
||||
p107.items = []parser{&p100}
|
||||
var p112 = sequenceParser{id: 112, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p111 = charParser{id: 111, chars: []rune{44}}
|
||||
p112.items = []parser{&p111}
|
||||
var p108 = sequenceParser{id: 108, commit: 256, name: "range-to", ranges: [][]int{{1, 1}}}
|
||||
p108.items = []parser{&p100}
|
||||
var p114 = sequenceParser{id: 114, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p113 = charParser{id: 113, chars: []rune{125}}
|
||||
p114.items = []parser{&p113}
|
||||
p115.items = []parser{&p110, &p194, &p107, &p194, &p112, &p194, &p108, &p194, &p114}
|
||||
var p117 = sequenceParser{id: 117, commit: 264, name: "one-or-more", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{122}}
|
||||
var p116 = charParser{id: 116, chars: []rune{43}}
|
||||
p117.items = []parser{&p116}
|
||||
var p119 = sequenceParser{id: 119, commit: 264, name: "zero-or-more", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{122}}
|
||||
var p118 = charParser{id: 118, chars: []rune{42}}
|
||||
p119.items = []parser{&p118}
|
||||
var p121 = sequenceParser{id: 121, commit: 264, name: "zero-or-one", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{122}}
|
||||
var p120 = charParser{id: 120, chars: []rune{63}}
|
||||
p121.items = []parser{&p120}
|
||||
p122.options = []parser{&p106, &p115, &p117, &p119, &p121}
|
||||
p124.items = []parser{&p123, &p122}
|
||||
var p125 = sequenceParser{id: 125, commit: 2, ranges: [][]int{{0, -1}, {1, 1}}}
|
||||
p125.items = []parser{&p194, &p124}
|
||||
p126.items = []parser{&p124, &p125}
|
||||
var p132 = sequenceParser{id: 132, commit: 256, name: "choice", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}, generalizations: []int{133}}
|
||||
var p127 = choiceParser{id: 127, commit: 258, name: "option"}
|
||||
p127.options = []parser{&p89, &p92, &p97, &p126}
|
||||
var p130 = sequenceParser{id: 130, commit: 2, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}}}
|
||||
var p129 = sequenceParser{id: 129, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p128 = charParser{id: 128, chars: []rune{124}}
|
||||
p129.items = []parser{&p128}
|
||||
p130.items = []parser{&p129, &p194, &p127}
|
||||
var p131 = sequenceParser{id: 131, commit: 2, ranges: [][]int{{0, -1}, {1, 1}}}
|
||||
p131.items = []parser{&p194, &p130}
|
||||
p132.items = []parser{&p127, &p194, &p130, &p131}
|
||||
p133.options = []parser{&p89, &p92, &p97, &p126, &p132}
|
||||
p177.items = []parser{&p174, &p194, &p176, &p194, &p133}
|
||||
p102.items = []parser{&p101}
|
||||
var p106 = sequenceParser{id: 106, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p105 = charParser{id: 105, chars: []rune{125}}
|
||||
p106.items = []parser{&p105}
|
||||
p107.items = []parser{&p104, &p194, &p102, &p194, &p106}
|
||||
var p116 = sequenceParser{id: 116, commit: 256, 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{123}}
|
||||
var p111 = sequenceParser{id: 111, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p110 = charParser{id: 110, chars: []rune{123}}
|
||||
p111.items = []parser{&p110}
|
||||
var p108 = sequenceParser{id: 108, commit: 256, name: "range-from", ranges: [][]int{{1, 1}}}
|
||||
p108.items = []parser{&p101}
|
||||
var p113 = sequenceParser{id: 113, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p112 = charParser{id: 112, chars: []rune{44}}
|
||||
p113.items = []parser{&p112}
|
||||
var p109 = sequenceParser{id: 109, commit: 256, name: "range-to", ranges: [][]int{{1, 1}}}
|
||||
p109.items = []parser{&p101}
|
||||
var p115 = sequenceParser{id: 115, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p114 = charParser{id: 114, chars: []rune{125}}
|
||||
p115.items = []parser{&p114}
|
||||
p116.items = []parser{&p111, &p194, &p108, &p194, &p113, &p194, &p109, &p194, &p115}
|
||||
var p118 = sequenceParser{id: 118, commit: 264, name: "one-or-more", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{123}}
|
||||
var p117 = charParser{id: 117, chars: []rune{43}}
|
||||
p118.items = []parser{&p117}
|
||||
var p120 = sequenceParser{id: 120, commit: 264, name: "zero-or-more", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{123}}
|
||||
var p119 = charParser{id: 119, chars: []rune{42}}
|
||||
p120.items = []parser{&p119}
|
||||
var p122 = sequenceParser{id: 122, commit: 264, name: "zero-or-one", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{123}}
|
||||
var p121 = charParser{id: 121, chars: []rune{63}}
|
||||
p122.items = []parser{&p121}
|
||||
p123.options = []parser{&p107, &p116, &p118, &p120, &p122}
|
||||
p125.items = []parser{&p124, &p123}
|
||||
var p126 = sequenceParser{id: 126, commit: 2, ranges: [][]int{{0, -1}, {1, 1}}}
|
||||
p126.items = []parser{&p194, &p125}
|
||||
p127.items = []parser{&p125, &p126}
|
||||
var p133 = sequenceParser{id: 133, commit: 256, name: "choice", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}, generalizations: []int{98}}
|
||||
var p128 = choiceParser{id: 128, commit: 258, name: "option"}
|
||||
p128.options = []parser{&p89, &p92, &p97, &p127}
|
||||
var p131 = sequenceParser{id: 131, commit: 2, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}}}
|
||||
var p130 = sequenceParser{id: 130, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var p129 = charParser{id: 129, chars: []rune{124}}
|
||||
p130.items = []parser{&p129}
|
||||
p131.items = []parser{&p130, &p194, &p128}
|
||||
var p132 = sequenceParser{id: 132, commit: 2, ranges: [][]int{{0, -1}, {1, 1}}}
|
||||
p132.items = []parser{&p194, &p131}
|
||||
p133.items = []parser{&p128, &p194, &p131, &p132}
|
||||
p98.options = []parser{&p89, &p92, &p97, &p127, &p133}
|
||||
p177.items = []parser{&p174, &p194, &p176, &p194, &p98}
|
||||
var p183 = sequenceParser{id: 183, commit: 2, ranges: [][]int{{0, -1}, {1, 1}, {0, -1}}}
|
||||
var p181 = sequenceParser{id: 181, commit: 2, ranges: [][]int{{1, 1}, {0, -1}, {0, -1}, {1, 1}}}
|
||||
var p179 = sequenceParser{id: 179, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
@ -1156,66 +1156,66 @@ func Parse(r io.Reader) (*Node, error) {
|
||||
b14.items = []builder{&b13}
|
||||
b15.options = []builder{&b2, &b4, &b6, &b8, &b10, &b12, &b14}
|
||||
var b54 = sequenceBuilder{id: 54, commit: 264, name: "comment", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}, generalizations: []int{193, 194}}
|
||||
var b37 = choiceBuilder{id: 37, commit: 266}
|
||||
var b36 = sequenceBuilder{id: 36, commit: 266, 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 b31 = charBuilder{}
|
||||
var b50 = choiceBuilder{id: 50, commit: 266}
|
||||
var b49 = sequenceBuilder{id: 49, commit: 266, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}, generalizations: []int{50}}
|
||||
var b46 = sequenceBuilder{id: 46, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
||||
var b44 = charBuilder{}
|
||||
var b45 = charBuilder{}
|
||||
b46.items = []builder{&b44, &b45}
|
||||
var b48 = sequenceBuilder{id: 48, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b47 = charBuilder{}
|
||||
b48.items = []builder{&b47}
|
||||
b49.items = []builder{&b46, &b48}
|
||||
var b43 = sequenceBuilder{id: 43, commit: 266, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{50}}
|
||||
var b31 = sequenceBuilder{id: 31, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
||||
var b29 = charBuilder{}
|
||||
var b30 = charBuilder{}
|
||||
b31.items = []builder{&b29, &b30}
|
||||
var b39 = choiceBuilder{id: 39, commit: 10}
|
||||
var b36 = sequenceBuilder{id: 36, commit: 10, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}, generalizations: []int{39}}
|
||||
var b33 = sequenceBuilder{id: 33, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b32 = charBuilder{}
|
||||
b33.items = []builder{&b31, &b32}
|
||||
b33.items = []builder{&b32}
|
||||
var b35 = sequenceBuilder{id: 35, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b34 = charBuilder{}
|
||||
b35.items = []builder{&b34}
|
||||
b36.items = []builder{&b33, &b35}
|
||||
var b30 = sequenceBuilder{id: 30, commit: 266, 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 b38 = sequenceBuilder{id: 38, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{39}}
|
||||
var b37 = charBuilder{}
|
||||
b38.items = []builder{&b37}
|
||||
b39.options = []builder{&b36, &b38}
|
||||
var b42 = sequenceBuilder{id: 42, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
||||
var b40 = charBuilder{}
|
||||
var b41 = charBuilder{}
|
||||
b42.items = []builder{&b40, &b41}
|
||||
b43.items = []builder{&b31, &b39, &b42}
|
||||
b50.options = []builder{&b49, &b43}
|
||||
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 b28 = choiceBuilder{id: 28, commit: 266}
|
||||
var b17 = sequenceBuilder{id: 17, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{28}}
|
||||
var b16 = charBuilder{}
|
||||
var b17 = charBuilder{}
|
||||
b18.items = []builder{&b16, &b17}
|
||||
var b26 = choiceBuilder{id: 26, commit: 10}
|
||||
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 b19 = charBuilder{}
|
||||
b20.items = []builder{&b19}
|
||||
var b22 = sequenceBuilder{id: 22, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b21 = charBuilder{}
|
||||
b22.items = []builder{&b21}
|
||||
b23.items = []builder{&b20, &b22}
|
||||
var b25 = sequenceBuilder{id: 25, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{26}}
|
||||
b17.items = []builder{&b16}
|
||||
var b19 = sequenceBuilder{id: 19, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{28}}
|
||||
var b18 = charBuilder{}
|
||||
b19.items = []builder{&b18}
|
||||
var b21 = sequenceBuilder{id: 21, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{28}}
|
||||
var b20 = charBuilder{}
|
||||
b21.items = []builder{&b20}
|
||||
var b23 = sequenceBuilder{id: 23, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{28}}
|
||||
var b22 = charBuilder{}
|
||||
b23.items = []builder{&b22}
|
||||
var b25 = sequenceBuilder{id: 25, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{28}}
|
||||
var b24 = charBuilder{}
|
||||
b25.items = []builder{&b24}
|
||||
b26.options = []builder{&b23, &b25}
|
||||
var b29 = sequenceBuilder{id: 29, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}, {1, 1}, {1, 1}}}
|
||||
var b27 = charBuilder{}
|
||||
var b28 = charBuilder{}
|
||||
b29.items = []builder{&b27, &b28}
|
||||
b30.items = []builder{&b18, &b26, &b29}
|
||||
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 b50 = choiceBuilder{id: 50, commit: 266}
|
||||
var b39 = sequenceBuilder{id: 39, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||
var b38 = charBuilder{}
|
||||
b39.items = []builder{&b38}
|
||||
var b41 = sequenceBuilder{id: 41, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||
var b40 = charBuilder{}
|
||||
b41.items = []builder{&b40}
|
||||
var b43 = sequenceBuilder{id: 43, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||
var b42 = charBuilder{}
|
||||
b43.items = []builder{&b42}
|
||||
var b45 = sequenceBuilder{id: 45, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||
var b44 = charBuilder{}
|
||||
b45.items = []builder{&b44}
|
||||
var b47 = sequenceBuilder{id: 47, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||
var b46 = charBuilder{}
|
||||
b47.items = []builder{&b46}
|
||||
var b49 = sequenceBuilder{id: 49, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{50}}
|
||||
var b48 = charBuilder{}
|
||||
b49.items = []builder{&b48}
|
||||
b50.options = []builder{&b39, &b41, &b43, &b45, &b47, &b49}
|
||||
var b27 = sequenceBuilder{id: 27, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{28}}
|
||||
var b26 = charBuilder{}
|
||||
b27.items = []builder{&b26}
|
||||
b28.options = []builder{&b17, &b19, &b21, &b23, &b25, &b27}
|
||||
var b52 = sequenceBuilder{id: 52, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b51 = charBuilder{}
|
||||
b52.items = []builder{&b51}
|
||||
b53.items = []builder{&b50, &b52, &b50, &b37}
|
||||
b54.items = []builder{&b37, &b53}
|
||||
b53.items = []builder{&b28, &b52, &b28, &b50}
|
||||
b54.items = []builder{&b50, &b53}
|
||||
b193.options = []builder{&b15, &b54}
|
||||
b194.options = []builder{&b193}
|
||||
var b195 = sequenceBuilder{id: 195, commit: 258, ranges: [][]int{{0, 1}, {0, -1}, {0, 1}, {0, 1}}}
|
||||
@ -1229,7 +1229,7 @@ func Parse(r io.Reader) (*Node, error) {
|
||||
var b184 = sequenceBuilder{id: 184, commit: 258, ranges: [][]int{{1, 1}, {0, 1}}}
|
||||
var b177 = sequenceBuilder{id: 177, commit: 256, name: "definition", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}, {1, 1}}}
|
||||
var b174 = sequenceBuilder{id: 174, commit: 266, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}}
|
||||
var b92 = sequenceBuilder{id: 92, commit: 264, name: "symbol", ranges: [][]int{{1, -1}, {1, -1}}, generalizations: []int{133, 123, 127}}
|
||||
var b92 = sequenceBuilder{id: 92, commit: 264, name: "symbol", ranges: [][]int{{1, -1}, {1, -1}}, generalizations: []int{98, 124, 128}}
|
||||
var b91 = sequenceBuilder{id: 91, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b90 = charBuilder{}
|
||||
b91.items = []builder{&b90}
|
||||
@ -1288,12 +1288,12 @@ func Parse(r io.Reader) (*Node, error) {
|
||||
var b176 = sequenceBuilder{id: 176, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b175 = charBuilder{}
|
||||
b176.items = []builder{&b175}
|
||||
var b133 = choiceBuilder{id: 133, commit: 258}
|
||||
var b89 = choiceBuilder{id: 89, commit: 258, generalizations: []int{133, 123, 127}}
|
||||
var b56 = sequenceBuilder{id: 56, commit: 264, name: "any-char", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{89, 133, 123, 127}}
|
||||
var b98 = choiceBuilder{id: 98, commit: 258}
|
||||
var b89 = choiceBuilder{id: 89, commit: 258, generalizations: []int{98, 124, 128}}
|
||||
var b56 = sequenceBuilder{id: 56, commit: 264, name: "any-char", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{89, 98, 124, 128}}
|
||||
var b55 = charBuilder{}
|
||||
b56.items = []builder{&b55}
|
||||
var b75 = sequenceBuilder{id: 75, commit: 264, 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 b75 = sequenceBuilder{id: 75, commit: 264, name: "char-class", ranges: [][]int{{1, 1}, {0, 1}, {0, -1}, {1, 1}, {1, 1}, {0, 1}, {0, -1}, {1, 1}}, generalizations: []int{89, 98, 124, 128}}
|
||||
var b71 = sequenceBuilder{id: 71, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b70 = charBuilder{}
|
||||
b71.items = []builder{&b70}
|
||||
@ -1324,7 +1324,7 @@ func Parse(r io.Reader) (*Node, error) {
|
||||
var b73 = charBuilder{}
|
||||
b74.items = []builder{&b73}
|
||||
b75.items = []builder{&b71, &b58, &b72, &b74}
|
||||
var b88 = sequenceBuilder{id: 88, commit: 264, name: "char-sequence", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{89, 133, 123, 127}}
|
||||
var b88 = sequenceBuilder{id: 88, commit: 264, name: "char-sequence", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{89, 98, 124, 128}}
|
||||
var b85 = sequenceBuilder{id: 85, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b84 = charBuilder{}
|
||||
b85.items = []builder{&b84}
|
||||
@ -1346,76 +1346,76 @@ func Parse(r io.Reader) (*Node, error) {
|
||||
b87.items = []builder{&b86}
|
||||
b88.items = []builder{&b85, &b83, &b87}
|
||||
b89.options = []builder{&b56, &b75, &b88}
|
||||
var b97 = sequenceBuilder{id: 97, commit: 258, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{133, 123, 127}}
|
||||
var b97 = sequenceBuilder{id: 97, commit: 258, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{98, 124, 128}}
|
||||
var b94 = sequenceBuilder{id: 94, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b93 = charBuilder{}
|
||||
b94.items = []builder{&b93}
|
||||
var b96 = sequenceBuilder{id: 96, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b95 = charBuilder{}
|
||||
b96.items = []builder{&b95}
|
||||
b97.items = []builder{&b94, &b194, &b133, &b194, &b96}
|
||||
var b126 = sequenceBuilder{id: 126, commit: 256, name: "sequence", ranges: [][]int{{1, 1}, {0, -1}}, generalizations: []int{133, 127}}
|
||||
var b124 = sequenceBuilder{id: 124, commit: 264, name: "item", ranges: [][]int{{1, 1}, {0, 1}, {1, 1}, {0, 1}}}
|
||||
var b123 = choiceBuilder{id: 123, commit: 10}
|
||||
b123.options = []builder{&b89, &b92, &b97}
|
||||
var b122 = choiceBuilder{id: 122, commit: 258}
|
||||
var b106 = sequenceBuilder{id: 106, commit: 256, 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 b102 = charBuilder{}
|
||||
b103.items = []builder{&b102}
|
||||
var b101 = sequenceBuilder{id: 101, commit: 256, name: "count", ranges: [][]int{{1, 1}}}
|
||||
var b100 = sequenceBuilder{id: 100, commit: 266, ranges: [][]int{{1, -1}, {1, -1}}}
|
||||
var b99 = sequenceBuilder{id: 99, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b98 = charBuilder{}
|
||||
b99.items = []builder{&b98}
|
||||
b97.items = []builder{&b94, &b194, &b98, &b194, &b96}
|
||||
var b127 = sequenceBuilder{id: 127, commit: 256, name: "sequence", ranges: [][]int{{1, 1}, {0, -1}}, generalizations: []int{98, 128}}
|
||||
var b125 = sequenceBuilder{id: 125, commit: 264, name: "item", ranges: [][]int{{1, 1}, {0, 1}, {1, 1}, {0, 1}}}
|
||||
var b124 = choiceBuilder{id: 124, commit: 10}
|
||||
b124.options = []builder{&b89, &b92, &b97}
|
||||
var b123 = choiceBuilder{id: 123, commit: 258}
|
||||
var b107 = sequenceBuilder{id: 107, commit: 256, name: "count-quantifier", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}, {1, 1}}, generalizations: []int{123}}
|
||||
var b104 = sequenceBuilder{id: 104, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b103 = charBuilder{}
|
||||
b104.items = []builder{&b103}
|
||||
var b102 = sequenceBuilder{id: 102, commit: 256, name: "count", ranges: [][]int{{1, 1}}}
|
||||
var b101 = sequenceBuilder{id: 101, commit: 266, ranges: [][]int{{1, -1}, {1, -1}}}
|
||||
var b100 = sequenceBuilder{id: 100, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b99 = charBuilder{}
|
||||
b100.items = []builder{&b99}
|
||||
b101.items = []builder{&b100}
|
||||
var b105 = sequenceBuilder{id: 105, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b104 = charBuilder{}
|
||||
b105.items = []builder{&b104}
|
||||
b106.items = []builder{&b103, &b194, &b101, &b194, &b105}
|
||||
var b115 = sequenceBuilder{id: 115, commit: 256, 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 b109 = charBuilder{}
|
||||
b110.items = []builder{&b109}
|
||||
var b107 = sequenceBuilder{id: 107, commit: 256, name: "range-from", ranges: [][]int{{1, 1}}}
|
||||
b107.items = []builder{&b100}
|
||||
var b112 = sequenceBuilder{id: 112, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b111 = charBuilder{}
|
||||
b112.items = []builder{&b111}
|
||||
var b108 = sequenceBuilder{id: 108, commit: 256, name: "range-to", ranges: [][]int{{1, 1}}}
|
||||
b108.items = []builder{&b100}
|
||||
var b114 = sequenceBuilder{id: 114, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b113 = charBuilder{}
|
||||
b114.items = []builder{&b113}
|
||||
b115.items = []builder{&b110, &b194, &b107, &b194, &b112, &b194, &b108, &b194, &b114}
|
||||
var b117 = sequenceBuilder{id: 117, commit: 264, name: "one-or-more", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{122}}
|
||||
var b116 = charBuilder{}
|
||||
b117.items = []builder{&b116}
|
||||
var b119 = sequenceBuilder{id: 119, commit: 264, name: "zero-or-more", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{122}}
|
||||
var b118 = charBuilder{}
|
||||
b119.items = []builder{&b118}
|
||||
var b121 = sequenceBuilder{id: 121, commit: 264, name: "zero-or-one", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{122}}
|
||||
var b120 = charBuilder{}
|
||||
b121.items = []builder{&b120}
|
||||
b122.options = []builder{&b106, &b115, &b117, &b119, &b121}
|
||||
b124.items = []builder{&b123, &b122}
|
||||
var b125 = sequenceBuilder{id: 125, commit: 2, ranges: [][]int{{0, -1}, {1, 1}}}
|
||||
b125.items = []builder{&b194, &b124}
|
||||
b126.items = []builder{&b124, &b125}
|
||||
var b132 = sequenceBuilder{id: 132, commit: 256, name: "choice", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}, generalizations: []int{133}}
|
||||
var b127 = choiceBuilder{id: 127, commit: 258}
|
||||
b127.options = []builder{&b89, &b92, &b97, &b126}
|
||||
var b130 = sequenceBuilder{id: 130, commit: 2, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}}}
|
||||
var b129 = sequenceBuilder{id: 129, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b128 = charBuilder{}
|
||||
b129.items = []builder{&b128}
|
||||
b130.items = []builder{&b129, &b194, &b127}
|
||||
var b131 = sequenceBuilder{id: 131, commit: 2, ranges: [][]int{{0, -1}, {1, 1}}}
|
||||
b131.items = []builder{&b194, &b130}
|
||||
b132.items = []builder{&b127, &b194, &b130, &b131}
|
||||
b133.options = []builder{&b89, &b92, &b97, &b126, &b132}
|
||||
b177.items = []builder{&b174, &b194, &b176, &b194, &b133}
|
||||
b102.items = []builder{&b101}
|
||||
var b106 = sequenceBuilder{id: 106, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b105 = charBuilder{}
|
||||
b106.items = []builder{&b105}
|
||||
b107.items = []builder{&b104, &b194, &b102, &b194, &b106}
|
||||
var b116 = sequenceBuilder{id: 116, commit: 256, 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{123}}
|
||||
var b111 = sequenceBuilder{id: 111, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b110 = charBuilder{}
|
||||
b111.items = []builder{&b110}
|
||||
var b108 = sequenceBuilder{id: 108, commit: 256, name: "range-from", ranges: [][]int{{1, 1}}}
|
||||
b108.items = []builder{&b101}
|
||||
var b113 = sequenceBuilder{id: 113, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b112 = charBuilder{}
|
||||
b113.items = []builder{&b112}
|
||||
var b109 = sequenceBuilder{id: 109, commit: 256, name: "range-to", ranges: [][]int{{1, 1}}}
|
||||
b109.items = []builder{&b101}
|
||||
var b115 = sequenceBuilder{id: 115, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b114 = charBuilder{}
|
||||
b115.items = []builder{&b114}
|
||||
b116.items = []builder{&b111, &b194, &b108, &b194, &b113, &b194, &b109, &b194, &b115}
|
||||
var b118 = sequenceBuilder{id: 118, commit: 264, name: "one-or-more", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{123}}
|
||||
var b117 = charBuilder{}
|
||||
b118.items = []builder{&b117}
|
||||
var b120 = sequenceBuilder{id: 120, commit: 264, name: "zero-or-more", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{123}}
|
||||
var b119 = charBuilder{}
|
||||
b120.items = []builder{&b119}
|
||||
var b122 = sequenceBuilder{id: 122, commit: 264, name: "zero-or-one", allChars: true, ranges: [][]int{{1, 1}, {1, 1}}, generalizations: []int{123}}
|
||||
var b121 = charBuilder{}
|
||||
b122.items = []builder{&b121}
|
||||
b123.options = []builder{&b107, &b116, &b118, &b120, &b122}
|
||||
b125.items = []builder{&b124, &b123}
|
||||
var b126 = sequenceBuilder{id: 126, commit: 2, ranges: [][]int{{0, -1}, {1, 1}}}
|
||||
b126.items = []builder{&b194, &b125}
|
||||
b127.items = []builder{&b125, &b126}
|
||||
var b133 = sequenceBuilder{id: 133, commit: 256, name: "choice", ranges: [][]int{{1, 1}, {0, -1}, {1, 1}, {0, -1}}, generalizations: []int{98}}
|
||||
var b128 = choiceBuilder{id: 128, commit: 258}
|
||||
b128.options = []builder{&b89, &b92, &b97, &b127}
|
||||
var b131 = sequenceBuilder{id: 131, commit: 2, ranges: [][]int{{1, 1}, {0, -1}, {1, 1}}}
|
||||
var b130 = sequenceBuilder{id: 130, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
var b129 = charBuilder{}
|
||||
b130.items = []builder{&b129}
|
||||
b131.items = []builder{&b130, &b194, &b128}
|
||||
var b132 = sequenceBuilder{id: 132, commit: 2, ranges: [][]int{{0, -1}, {1, 1}}}
|
||||
b132.items = []builder{&b194, &b131}
|
||||
b133.items = []builder{&b128, &b194, &b131, &b132}
|
||||
b98.options = []builder{&b89, &b92, &b97, &b127, &b133}
|
||||
b177.items = []builder{&b174, &b194, &b176, &b194, &b98}
|
||||
var b183 = sequenceBuilder{id: 183, commit: 2, ranges: [][]int{{0, -1}, {1, 1}, {0, -1}}}
|
||||
var b181 = sequenceBuilder{id: 181, commit: 2, ranges: [][]int{{1, 1}, {0, -1}, {0, -1}, {1, 1}}}
|
||||
var b179 = sequenceBuilder{id: 179, commit: 10, allChars: true, ranges: [][]int{{1, 1}, {1, 1}}}
|
||||
|
||||
@ -1,55 +1,36 @@
|
||||
/*
|
||||
foo
|
||||
*/
|
||||
// bar
|
||||
// bar
|
||||
// baz
|
||||
/* foo
|
||||
bar baz */ // foo bar baz
|
||||
wschar:alias = // foo
|
||||
/* bar */
|
||||
" " | "\t" | "\n" | "\b" | "\f" | "\r" | "\v";
|
||||
// whitespace handling:
|
||||
wschar:alias = " " | "\t" | "\n" | "\b" | "\f" | "\r" | "\v";
|
||||
wsc:ws = wschar | comment;
|
||||
block-comment:alias:nows = /* foo */ // bar
|
||||
"/*" ("*" [^/] | [^*])* "*/";
|
||||
line-comment:alias:nows = /*
|
||||
foo
|
||||
*/
|
||||
"//" [^\n]*;
|
||||
comment-segment:alias:nows = // bar
|
||||
line-comment | block-comment;
|
||||
ws-no-nl:alias:nows = " "
|
||||
| "\t"
|
||||
| "\b"
|
||||
/* this one */ /* is a */
|
||||
| "\f"
|
||||
/* form feed */ /* for sure */
|
||||
| "\r"
|
||||
| "\v";
|
||||
comment:nows = comment-segment
|
||||
/* segment is not the best name */ /* but */
|
||||
( ws-no-nl*
|
||||
"\n"?
|
||||
ws-no-nl*
|
||||
/* fine */
|
||||
comment-segment
|
||||
)*;
|
||||
any-char = "."; // equivalent to [^]
|
||||
ws-no-nl:alias:nows = " " | "\t" | "\b" | "\f" | "\r" | "\v";
|
||||
|
||||
// caution: newline is accepted
|
||||
/* class not */
|
||||
// comments:
|
||||
block-comment:alias:nows = "/*" ("*" [^/] | [^*])* "*/";
|
||||
line-comment:alias:nows = "//" [^\n]*;
|
||||
comment-segment:alias:nows = line-comment | block-comment;
|
||||
comment:nows = comment-segment (ws-no-nl* "\n"? ws-no-nl* comment-segment)*;
|
||||
|
||||
// characters:
|
||||
any-char = "."; // equivalent to [^]
|
||||
class-not = "^";
|
||||
class-char:nows = [^\\\[\]\^\-] | "\\" .; /* foo
|
||||
bar */
|
||||
class-char:nows = [^\\\[\]\^\-] | "\\" .; // caution: newline is accepted
|
||||
char-range:nows = class-char "-" class-char; // foo
|
||||
char-class:nows = "[" class-not? (class-char | char-range)* "]";
|
||||
|
||||
// newline is accepted
|
||||
sequence-char:nows = [^\\"] | "\\" .;
|
||||
// strings (char sequence):
|
||||
sequence-char:nows = [^\\"] | "\\" .; // caution: newline is accepted
|
||||
char-sequence:nows = "\"" sequence-char* "\"";
|
||||
|
||||
// terminal parsers cannot be composed of other parsers:
|
||||
terminal:alias = any-char | char-class | char-sequence;
|
||||
|
||||
// symbols can reference other parser definitions, or recursively the containing parser:
|
||||
symbol:nows = [^\\ \n\t\b\f\r\v/.\[\]\"{}\^+*?|():=;]+;
|
||||
|
||||
// grouping allows, for example, use choices as sequence items:
|
||||
group:alias = "(" expression ")";
|
||||
expression:alias = terminal | symbol | group | sequence | choice;
|
||||
|
||||
// sequences with ranges:
|
||||
number:alias:nows = [0-9]+;
|
||||
count = number;
|
||||
count-quantifier = "{" count "}";
|
||||
@ -62,14 +43,12 @@ zero-or-one = "?";
|
||||
quantity:alias = count-quantifier | range-quantifier | one-or-more | zero-or-more | zero-or-one;
|
||||
item:nows = (terminal | symbol | group) quantity?;
|
||||
sequence = item+;
|
||||
option:alias = terminal | symbol | group | sequence;
|
||||
|
||||
// DOC: how the order matters
|
||||
// choices:
|
||||
option:alias = terminal | symbol | group | sequence;
|
||||
choice = option ("|" option)+;
|
||||
|
||||
// DOC: not having 'not' needs some tricks sometimes
|
||||
|
||||
expression:alias = terminal | symbol | group | sequence | choice;
|
||||
// flags control how the subtrees of the individual parser definitions are handled:
|
||||
alias = "alias";
|
||||
ws = "ws";
|
||||
nows = "nows";
|
||||
@ -78,6 +57,8 @@ nokw = "nokw";
|
||||
failpass = "failpass";
|
||||
root = "root";
|
||||
flag:alias = alias | ws | nows | kw | nokw | failpass | root;
|
||||
|
||||
// a syntax document consists of definitions:
|
||||
definition-name:alias:nows = symbol (":" flag)*;
|
||||
definition = definition-name "=" expression;
|
||||
definitions:alias = definition (";"+ definition)*;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user