parser: remake generated_parser output (#13923)

In a previous PR, the generated parser was created using an old version of goyacc.

Also adds -l to disable line directives, which fixes debug processing and reduces diffs at the expense of making it more difficult to reason about the generated output.

Signed-off-by: Owen Williams <owen.williams@grafana.com>
This commit is contained in:
Owen Williams 2024-04-13 06:59:54 -04:00 committed by GitHub
parent 4ec5c25393
commit 4a6f8704ef
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 39 additions and 39 deletions

View file

@ -86,7 +86,7 @@ ifeq (, $(shell command -v goyacc 2> /dev/null))
@echo "goyacc not installed so skipping" @echo "goyacc not installed so skipping"
@echo "To install: go install golang.org/x/tools/cmd/goyacc@v0.6.0" @echo "To install: go install golang.org/x/tools/cmd/goyacc@v0.6.0"
else else
goyacc -o promql/parser/generated_parser.y.go promql/parser/generated_parser.y goyacc -l -o promql/parser/generated_parser.y.go promql/parser/generated_parser.y
endif endif
.PHONY: test .PHONY: test

View file

@ -225,7 +225,7 @@ const yyEofCode = 1
const yyErrCode = 2 const yyErrCode = 2
const yyInitialStackSize = 16 const yyInitialStackSize = 16
var yyExca = [...]int{ var yyExca = [...]int16{
-1, 1, -1, 1,
1, -1, 1, -1,
-2, 0, -2, 0,
@ -376,7 +376,7 @@ const yyPrivate = 57344
const yyLast = 742 const yyLast = 742
var yyAct = [...]int{ var yyAct = [...]int16{
151, 322, 320, 268, 327, 148, 221, 37, 187, 144, 151, 322, 320, 268, 327, 148, 221, 37, 187, 144,
281, 280, 152, 113, 77, 173, 104, 102, 101, 6, 281, 280, 152, 113, 77, 173, 104, 102, 101, 6,
128, 223, 105, 193, 155, 194, 195, 196, 339, 262, 128, 223, 105, 193, 155, 194, 195, 196, 339, 262,
@ -454,7 +454,7 @@ var yyAct = [...]int{
0, 98, 0, 98,
} }
var yyPact = [...]int{ var yyPact = [...]int16{
17, 153, 541, 541, 385, 500, -1000, -1000, -1000, 146, 17, 153, 541, 541, 385, 500, -1000, -1000, -1000, 146,
-1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
@ -492,7 +492,7 @@ var yyPact = [...]int{
-1000, -1000, -1000, -1000,
} }
var yyPgo = [...]int{ var yyPgo = [...]int16{
0, 353, 13, 352, 6, 15, 350, 263, 349, 347, 0, 353, 13, 352, 6, 15, 350, 263, 349, 347,
344, 209, 265, 343, 14, 342, 10, 11, 341, 337, 344, 209, 265, 343, 14, 342, 10, 11, 341, 337,
8, 336, 3, 4, 333, 2, 1, 0, 332, 12, 8, 336, 3, 4, 333, 2, 1, 0, 332, 12,
@ -501,7 +501,7 @@ var yyPgo = [...]int{
290, 249, 9, 271, 270, 268, 290, 249, 9, 271, 270, 268,
} }
var yyR1 = [...]int{ var yyR1 = [...]int8{
0, 54, 54, 54, 54, 54, 54, 54, 37, 37, 0, 54, 54, 54, 54, 54, 54, 54, 37, 37,
37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
32, 32, 32, 32, 33, 33, 35, 35, 35, 35, 32, 32, 32, 32, 33, 33, 35, 35, 35, 35,
@ -528,7 +528,7 @@ var yyR1 = [...]int{
17, 17, 17, 17,
} }
var yyR2 = [...]int{ var yyR2 = [...]int8{
0, 2, 2, 2, 2, 2, 2, 1, 1, 1, 0, 2, 2, 2, 2, 2, 2, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
3, 3, 2, 2, 2, 2, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 4, 4, 4, 4,
@ -555,7 +555,7 @@ var yyR2 = [...]int{
0, 1, 0, 1,
} }
var yyChk = [...]int{ var yyChk = [...]int16{
-1000, -54, 88, 89, 90, 91, 2, 10, -12, -7, -1000, -54, 88, 89, 90, 91, 2, 10, -12, -7,
-11, 60, 61, 75, 62, 63, 64, 12, 45, 46, -11, 60, 61, 75, 62, 63, 64, 12, 45, 46,
49, 65, 18, 66, 79, 67, 68, 69, 70, 71, 49, 65, 18, 66, 79, 67, 68, 69, 70, 71,
@ -593,7 +593,7 @@ var yyChk = [...]int{
21, -27, 21, -27,
} }
var yyDef = [...]int{ var yyDef = [...]int16{
0, -2, 125, 125, 0, 0, 7, 6, 1, 125, 0, -2, 125, 125, 0, 0, 7, 6, 1, 125,
99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
@ -631,11 +631,11 @@ var yyDef = [...]int{
166, 168, 166, 168,
} }
var yyTok1 = [...]int{ var yyTok1 = [...]int8{
1, 1,
} }
var yyTok2 = [...]int{ var yyTok2 = [...]int8{
2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
@ -648,7 +648,7 @@ var yyTok2 = [...]int{
92, 92,
} }
var yyTok3 = [...]int{ var yyTok3 = [...]int8{
0, 0,
} }
@ -728,9 +728,9 @@ func yyErrorMessage(state, lookAhead int) string {
expected := make([]int, 0, 4) expected := make([]int, 0, 4)
// Look for shiftable tokens. // Look for shiftable tokens.
base := yyPact[state] base := int(yyPact[state])
for tok := TOKSTART; tok-1 < len(yyToknames); tok++ { for tok := TOKSTART; tok-1 < len(yyToknames); tok++ {
if n := base + tok; n >= 0 && n < yyLast && yyChk[yyAct[n]] == tok { if n := base + tok; n >= 0 && n < yyLast && int(yyChk[int(yyAct[n])]) == tok {
if len(expected) == cap(expected) { if len(expected) == cap(expected) {
return res return res
} }
@ -740,13 +740,13 @@ func yyErrorMessage(state, lookAhead int) string {
if yyDef[state] == -2 { if yyDef[state] == -2 {
i := 0 i := 0
for yyExca[i] != -1 || yyExca[i+1] != state { for yyExca[i] != -1 || int(yyExca[i+1]) != state {
i += 2 i += 2
} }
// Look for tokens that we accept or reduce. // Look for tokens that we accept or reduce.
for i += 2; yyExca[i] >= 0; i += 2 { for i += 2; yyExca[i] >= 0; i += 2 {
tok := yyExca[i] tok := int(yyExca[i])
if tok < TOKSTART || yyExca[i+1] == 0 { if tok < TOKSTART || yyExca[i+1] == 0 {
continue continue
} }
@ -777,30 +777,30 @@ func yylex1(lex yyLexer, lval *yySymType) (char, token int) {
token = 0 token = 0
char = lex.Lex(lval) char = lex.Lex(lval)
if char <= 0 { if char <= 0 {
token = yyTok1[0] token = int(yyTok1[0])
goto out goto out
} }
if char < len(yyTok1) { if char < len(yyTok1) {
token = yyTok1[char] token = int(yyTok1[char])
goto out goto out
} }
if char >= yyPrivate { if char >= yyPrivate {
if char < yyPrivate+len(yyTok2) { if char < yyPrivate+len(yyTok2) {
token = yyTok2[char-yyPrivate] token = int(yyTok2[char-yyPrivate])
goto out goto out
} }
} }
for i := 0; i < len(yyTok3); i += 2 { for i := 0; i < len(yyTok3); i += 2 {
token = yyTok3[i+0] token = int(yyTok3[i+0])
if token == char { if token == char {
token = yyTok3[i+1] token = int(yyTok3[i+1])
goto out goto out
} }
} }
out: out:
if token == 0 { if token == 0 {
token = yyTok2[1] /* unknown char */ token = int(yyTok2[1]) /* unknown char */
} }
if yyDebug >= 3 { if yyDebug >= 3 {
__yyfmt__.Printf("lex %s(%d)\n", yyTokname(token), uint(char)) __yyfmt__.Printf("lex %s(%d)\n", yyTokname(token), uint(char))
@ -855,7 +855,7 @@ yystack:
yyS[yyp].yys = yystate yyS[yyp].yys = yystate
yynewstate: yynewstate:
yyn = yyPact[yystate] yyn = int(yyPact[yystate])
if yyn <= yyFlag { if yyn <= yyFlag {
goto yydefault /* simple state */ goto yydefault /* simple state */
} }
@ -866,8 +866,8 @@ yynewstate:
if yyn < 0 || yyn >= yyLast { if yyn < 0 || yyn >= yyLast {
goto yydefault goto yydefault
} }
yyn = yyAct[yyn] yyn = int(yyAct[yyn])
if yyChk[yyn] == yytoken { /* valid shift */ if int(yyChk[yyn]) == yytoken { /* valid shift */
yyrcvr.char = -1 yyrcvr.char = -1
yytoken = -1 yytoken = -1
yyVAL = yyrcvr.lval yyVAL = yyrcvr.lval
@ -880,7 +880,7 @@ yynewstate:
yydefault: yydefault:
/* default state action */ /* default state action */
yyn = yyDef[yystate] yyn = int(yyDef[yystate])
if yyn == -2 { if yyn == -2 {
if yyrcvr.char < 0 { if yyrcvr.char < 0 {
yyrcvr.char, yytoken = yylex1(yylex, &yyrcvr.lval) yyrcvr.char, yytoken = yylex1(yylex, &yyrcvr.lval)
@ -889,18 +889,18 @@ yydefault:
/* look through exception table */ /* look through exception table */
xi := 0 xi := 0
for { for {
if yyExca[xi+0] == -1 && yyExca[xi+1] == yystate { if yyExca[xi+0] == -1 && int(yyExca[xi+1]) == yystate {
break break
} }
xi += 2 xi += 2
} }
for xi += 2; ; xi += 2 { for xi += 2; ; xi += 2 {
yyn = yyExca[xi+0] yyn = int(yyExca[xi+0])
if yyn < 0 || yyn == yytoken { if yyn < 0 || yyn == yytoken {
break break
} }
} }
yyn = yyExca[xi+1] yyn = int(yyExca[xi+1])
if yyn < 0 { if yyn < 0 {
goto ret0 goto ret0
} }
@ -922,10 +922,10 @@ yydefault:
/* find a state where "error" is a legal shift action */ /* find a state where "error" is a legal shift action */
for yyp >= 0 { for yyp >= 0 {
yyn = yyPact[yyS[yyp].yys] + yyErrCode yyn = int(yyPact[yyS[yyp].yys]) + yyErrCode
if yyn >= 0 && yyn < yyLast { if yyn >= 0 && yyn < yyLast {
yystate = yyAct[yyn] /* simulate a shift of "error" */ yystate = int(yyAct[yyn]) /* simulate a shift of "error" */
if yyChk[yystate] == yyErrCode { if int(yyChk[yystate]) == yyErrCode {
goto yystack goto yystack
} }
} }
@ -961,7 +961,7 @@ yydefault:
yypt := yyp yypt := yyp
_ = yypt // guard against "declared and not used" _ = yypt // guard against "declared and not used"
yyp -= yyR2[yyn] yyp -= int(yyR2[yyn])
// yyp is now the index of $0. Perform the default action. Iff the // yyp is now the index of $0. Perform the default action. Iff the
// reduced production is ε, $1 is possibly out of range. // reduced production is ε, $1 is possibly out of range.
if yyp+1 >= len(yyS) { if yyp+1 >= len(yyS) {
@ -972,16 +972,16 @@ yydefault:
yyVAL = yyS[yyp+1] yyVAL = yyS[yyp+1]
/* consult goto table to find next state */ /* consult goto table to find next state */
yyn = yyR1[yyn] yyn = int(yyR1[yyn])
yyg := yyPgo[yyn] yyg := int(yyPgo[yyn])
yyj := yyg + yyS[yyp].yys + 1 yyj := yyg + yyS[yyp].yys + 1
if yyj >= yyLast { if yyj >= yyLast {
yystate = yyAct[yyg] yystate = int(yyAct[yyg])
} else { } else {
yystate = yyAct[yyj] yystate = int(yyAct[yyj])
if yyChk[yystate] != -yyn { if int(yyChk[yystate]) != -yyn {
yystate = yyAct[yyg] yystate = int(yyAct[yyg])
} }
} }
// dummy call; replaced with literal code // dummy call; replaced with literal code