From 5c4d5e230f043e92c4aa0c65b8f83a302dd1450d Mon Sep 17 00:00:00 2001 From: Marty Schoch Date: Fri, 29 Aug 2014 14:37:38 -0400 Subject: [PATCH] made parsing token constants private --- query_syntax.nex | 24 +- query_syntax.nn.go | 672 ++++++++++++++++++++++----------------------- query_syntax.y | 24 +- y.go | 48 ++-- 4 files changed, 384 insertions(+), 384 deletions(-) diff --git a/query_syntax.nex b/query_syntax.nex index 66e99b38..816a12ed 100644 --- a/query_syntax.nex +++ b/query_syntax.nex @@ -1,28 +1,28 @@ /\"((\\\")|(\\\\)|(\\\/)|(\\b)|(\\f)|(\\n)|(\\r)|(\\t)|(\\u[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F])|[^\"])*\"/ { lval.s = yylex.Text()[1:len(yylex.Text())-1] logDebugTokens("PHRASE - %s", lval.s); - return PHRASE + return tPHRASE } -/\+/ { logDebugTokens("PLUS"); return PLUS } -/-/ { logDebugTokens("MINUS"); return MINUS } -/:/ { logDebugTokens("COLON"); return COLON } -/^/ { logDebugTokens("BOOST"); return BOOST } -/\(/ { logDebugTokens("LPAREN"); return LPAREN } -/\)/ { logDebugTokens("RPAREN"); return RPAREN } -/>/ { logDebugTokens("GREATER"); return GREATER } -// { logDebugTokens("GREATER"); return tGREATER } +/<=]+/ { lval.s = yylex.Text() logDebugTokens("STRING - %s", lval.s); - return STRING + return tSTRING } // package bleve diff --git a/query_syntax.nn.go b/query_syntax.nn.go index 91082216..c907e314 100644 --- a/query_syntax.nn.go +++ b/query_syntax.nn.go @@ -23,17 +23,59 @@ a = make([]family, 1) { var acc [18]bool var fun [18]func(rune) int -fun[1] = func(r rune) int { +fun[15] = func(r rune) int { + switch(r) { + case 114: return 2 + case 98: return 16 + case 34: return 4 + case 117: return 2 + case 116: return 2 + case 92: return 3 + case 102: return 16 + case 110: return 2 + case 47: return 2 + default: + switch { + case 48 <= r && r <= 57: return 16 + case 65 <= r && r <= 70: return 16 + case 97 <= r && r <= 102: return 16 + default: return 2 + } + } + panic("unreachable") +} +fun[13] = func(r rune) int { + switch(r) { + case 47: return 2 + case 114: return 2 + case 98: return 14 + case 34: return 4 + case 117: return 2 + case 116: return 2 + case 92: return 3 + case 102: return 14 + case 110: return 2 + default: + switch { + case 48 <= r && r <= 57: return 14 + case 65 <= r && r <= 70: return 14 + case 97 <= r && r <= 102: return 14 + default: return 2 + } + } + panic("unreachable") +} +fun[17] = func(r rune) int { switch(r) { case 116: return 2 - case 114: return 2 - case 110: return 2 - case 34: return 3 - case 98: return 2 - case 117: return 2 - case 47: return 2 - case 92: return 4 + case 92: return 3 case 102: return 2 + case 110: return 2 + case 47: return 2 + case 114: return 2 + case 98: return 2 + case 34: return 4 + case 117: return 2 default: switch { case 48 <= r && r <= 57: return 2 @@ -46,36 +88,15 @@ fun[1] = func(r rune) int { } fun[6] = func(r rune) int { switch(r) { - case 34: return 3 - case 98: return 14 - case 117: return 2 - case 47: return 2 - case 92: return 4 - case 102: return 14 - case 116: return 2 - case 114: return 2 - case 110: return 2 - default: - switch { - case 48 <= r && r <= 57: return 14 - case 65 <= r && r <= 70: return 14 - case 97 <= r && r <= 102: return 14 - default: return 2 - } - } - panic("unreachable") -} -fun[8] = func(r rune) int { - switch(r) { - case 110: return 12 - case 34: return 13 - case 98: return 5 - case 117: return 6 - case 47: return 7 - case 92: return 8 - case 102: return 9 - case 116: return 10 - case 114: return 11 + case 34: return 12 + case 117: return 13 + case 116: return 5 + case 92: return 6 + case 102: return 7 + case 110: return 8 + case 47: return 9 + case 114: return 10 + case 98: return 11 default: switch { case 48 <= r && r <= 57: return 2 @@ -86,17 +107,17 @@ fun[8] = func(r rune) int { } panic("unreachable") } -fun[11] = func(r rune) int { +fun[1] = func(r rune) int { switch(r) { - case 34: return 3 - case 98: return 2 - case 117: return 2 - case 47: return 2 - case 92: return 4 + case 116: return 2 + case 92: return 3 case 102: return 2 - case 116: return 2 - case 114: return 2 case 110: return 2 + case 47: return 2 + case 114: return 2 + case 98: return 2 + case 34: return 4 + case 117: return 2 default: switch { case 48 <= r && r <= 57: return 2 @@ -107,38 +128,59 @@ fun[11] = func(r rune) int { } panic("unreachable") } -fun[15] = func(r rune) int { +fun[9] = func(r rune) int { switch(r) { - case 92: return 4 - case 102: return 16 - case 116: return 2 - case 114: return 2 case 110: return 2 - case 34: return 3 - case 98: return 16 - case 117: return 2 case 47: return 2 + case 114: return 2 + case 98: return 2 + case 34: return 4 + case 117: return 2 + case 116: return 2 + case 92: return 3 + case 102: return 2 default: switch { - case 48 <= r && r <= 57: return 16 - case 65 <= r && r <= 70: return 16 - case 97 <= r && r <= 102: return 16 + case 48 <= r && r <= 57: return 2 + case 65 <= r && r <= 70: return 2 + case 97 <= r && r <= 102: return 2 default: return 2 } } panic("unreachable") } +fun[0] = func(r rune) int { + switch(r) { + case 92: return -1 + case 102: return -1 + case 110: return -1 + case 47: return -1 + case 114: return -1 + case 98: return -1 + case 34: return 1 + case 117: return -1 + case 116: return -1 + default: + switch { + case 48 <= r && r <= 57: return -1 + case 65 <= r && r <= 70: return -1 + case 97 <= r && r <= 102: return -1 + default: return -1 + } + } + panic("unreachable") +} fun[10] = func(r rune) int { switch(r) { - case 34: return 3 - case 98: return 2 - case 117: return 2 - case 47: return 2 - case 92: return 4 - case 102: return 2 - case 116: return 2 case 114: return 2 + case 98: return 2 + case 34: return 4 + case 117: return 2 + case 116: return 2 + case 92: return 3 + case 102: return 2 case 110: return 2 + case 47: return 2 default: switch { case 48 <= r && r <= 57: return 2 @@ -149,17 +191,17 @@ fun[10] = func(r rune) int { } panic("unreachable") } -fun[12] = func(r rune) int { +fun[3] = func(r rune) int { switch(r) { - case 47: return 2 - case 92: return 4 - case 102: return 2 - case 116: return 2 - case 114: return 2 - case 110: return 2 - case 34: return 3 - case 98: return 2 - case 117: return 2 + case 116: return 5 + case 92: return 6 + case 102: return 7 + case 110: return 8 + case 47: return 9 + case 114: return 10 + case 98: return 11 + case 34: return 12 + case 117: return 13 default: switch { case 48 <= r && r <= 57: return 2 @@ -170,17 +212,39 @@ fun[12] = func(r rune) int { } panic("unreachable") } +acc[4] = true +fun[4] = func(r rune) int { + switch(r) { + case 110: return -1 + case 47: return -1 + case 114: return -1 + case 98: return -1 + case 34: return -1 + case 117: return -1 + case 116: return -1 + case 92: return -1 + case 102: return -1 + default: + switch { + case 48 <= r && r <= 57: return -1 + case 65 <= r && r <= 70: return -1 + case 97 <= r && r <= 102: return -1 + default: return -1 + } + } + panic("unreachable") +} fun[2] = func(r rune) int { switch(r) { - case 110: return 2 - case 34: return 3 - case 98: return 2 - case 117: return 2 case 47: return 2 - case 92: return 4 - case 102: return 2 - case 116: return 2 case 114: return 2 + case 98: return 2 + case 34: return 4 + case 117: return 2 + case 116: return 2 + case 92: return 3 + case 102: return 2 + case 110: return 2 default: switch { case 48 <= r && r <= 57: return 2 @@ -193,15 +257,15 @@ fun[2] = func(r rune) int { } fun[16] = func(r rune) int { switch(r) { - case 92: return 4 - case 102: return 17 - case 116: return 2 - case 114: return 2 case 110: return 2 - case 34: return 3 - case 98: return 17 - case 117: return 2 case 47: return 2 + case 114: return 2 + case 98: return 17 + case 34: return 4 + case 117: return 2 + case 116: return 2 + case 92: return 3 + case 102: return 17 default: switch { case 48 <= r && r <= 57: return 17 @@ -212,101 +276,59 @@ fun[16] = func(r rune) int { } panic("unreachable") } -fun[4] = func(r rune) int { - switch(r) { - case 98: return 5 - case 117: return 6 - case 47: return 7 - case 92: return 8 - case 102: return 9 - case 116: return 10 - case 114: return 11 - case 110: return 12 - case 34: return 13 - default: - switch { - case 48 <= r && r <= 57: return 2 - case 65 <= r && r <= 70: return 2 - case 97 <= r && r <= 102: return 2 - default: return 2 - } - } - panic("unreachable") -} -fun[5] = func(r rune) int { - switch(r) { - case 102: return 2 - case 116: return 2 - case 114: return 2 - case 110: return 2 - case 34: return 3 - case 98: return 2 - case 117: return 2 - case 47: return 2 - case 92: return 4 - default: - switch { - case 48 <= r && r <= 57: return 2 - case 65 <= r && r <= 70: return 2 - case 97 <= r && r <= 102: return 2 - default: return 2 - } - } - panic("unreachable") -} -fun[17] = func(r rune) int { - switch(r) { - case 92: return 4 - case 102: return 2 - case 116: return 2 - case 114: return 2 - case 110: return 2 - case 34: return 3 - case 98: return 2 - case 117: return 2 - case 47: return 2 - default: - switch { - case 48 <= r && r <= 57: return 2 - case 65 <= r && r <= 70: return 2 - case 97 <= r && r <= 102: return 2 - default: return 2 - } - } - panic("unreachable") -} -acc[3] = true -fun[3] = func(r rune) int { - switch(r) { - case 92: return -1 - case 102: return -1 - case 116: return -1 - case 114: return -1 - case 110: return -1 - case 34: return -1 - case 98: return -1 - case 117: return -1 - case 47: return -1 - default: - switch { - case 48 <= r && r <= 57: return -1 - case 65 <= r && r <= 70: return -1 - case 97 <= r && r <= 102: return -1 - default: return -1 - } - } - panic("unreachable") -} fun[7] = func(r rune) int { switch(r) { - case 116: return 2 - case 114: return 2 case 110: return 2 - case 34: return 3 - case 98: return 2 - case 117: return 2 case 47: return 2 - case 92: return 4 + case 114: return 2 + case 98: return 2 + case 34: return 4 + case 117: return 2 + case 116: return 2 + case 92: return 3 + case 102: return 2 + default: + switch { + case 48 <= r && r <= 57: return 2 + case 65 <= r && r <= 70: return 2 + case 97 <= r && r <= 102: return 2 + default: return 2 + } + } + panic("unreachable") +} +fun[11] = func(r rune) int { + switch(r) { + case 47: return 2 + case 114: return 2 + case 98: return 2 + case 34: return 4 + case 117: return 2 + case 116: return 2 + case 92: return 3 + case 102: return 2 + case 110: return 2 + default: + switch { + case 48 <= r && r <= 57: return 2 + case 65 <= r && r <= 70: return 2 + case 97 <= r && r <= 102: return 2 + default: return 2 + } + } + panic("unreachable") +} +acc[12] = true +fun[12] = func(r rune) int { + switch(r) { + case 110: return 2 + case 47: return 2 + case 114: return 2 + case 98: return 2 + case 34: return 4 + case 117: return 2 + case 116: return 2 + case 92: return 3 case 102: return 2 default: switch { @@ -320,15 +342,15 @@ fun[7] = func(r rune) int { } fun[14] = func(r rune) int { switch(r) { - case 47: return 2 - case 92: return 4 - case 102: return 15 - case 116: return 2 - case 114: return 2 case 110: return 2 - case 34: return 3 + case 47: return 2 + case 114: return 2 case 98: return 15 + case 34: return 4 case 117: return 2 + case 116: return 2 + case 92: return 3 + case 102: return 15 default: switch { case 48 <= r && r <= 57: return 15 @@ -339,18 +361,17 @@ fun[14] = func(r rune) int { } panic("unreachable") } -acc[13] = true -fun[13] = func(r rune) int { +fun[5] = func(r rune) int { switch(r) { - case 92: return 4 - case 102: return 2 - case 116: return 2 - case 114: return 2 case 110: return 2 - case 34: return 3 - case 98: return 2 - case 117: return 2 case 47: return 2 + case 114: return 2 + case 98: return 2 + case 34: return 4 + case 117: return 2 + case 116: return 2 + case 92: return 3 + case 102: return 2 default: switch { case 48 <= r && r <= 57: return 2 @@ -361,38 +382,17 @@ fun[13] = func(r rune) int { } panic("unreachable") } -fun[0] = func(r rune) int { +fun[8] = func(r rune) int { switch(r) { - case 117: return -1 - case 47: return -1 - case 92: return -1 - case 102: return -1 - case 116: return -1 - case 114: return -1 - case 110: return -1 - case 34: return 1 - case 98: return -1 - default: - switch { - case 48 <= r && r <= 57: return -1 - case 65 <= r && r <= 70: return -1 - case 97 <= r && r <= 102: return -1 - default: return -1 - } - } - panic("unreachable") -} -fun[9] = func(r rune) int { - switch(r) { - case 47: return 2 - case 92: return 4 - case 102: return 2 - case 116: return 2 - case 114: return 2 - case 110: return 2 - case 34: return 3 - case 98: return 2 + case 34: return 4 case 117: return 2 + case 116: return 2 + case 92: return 3 + case 102: return 2 + case 110: return 2 + case 47: return 2 + case 114: return 2 + case 98: return 2 default: switch { case 48 <= r && r <= 57: return 2 @@ -410,9 +410,10 @@ a0[0].id = 0 { var acc [2]bool var fun [2]func(rune) int -fun[0] = func(r rune) int { +acc[1] = true +fun[1] = func(r rune) int { switch(r) { - case 43: return 1 + case 43: return -1 default: switch { default: return -1 @@ -420,10 +421,9 @@ fun[0] = func(r rune) int { } panic("unreachable") } -acc[1] = true -fun[1] = func(r rune) int { +fun[0] = func(r rune) int { switch(r) { - case 43: return -1 + case 43: return 1 default: switch { default: return -1 @@ -438,10 +438,9 @@ a0[1].id = 1 { var acc [2]bool var fun [2]func(rune) int -acc[1] = true -fun[1] = func(r rune) int { +fun[0] = func(r rune) int { switch(r) { - case 45: return -1 + case 45: return 1 default: switch { default: return -1 @@ -449,9 +448,10 @@ fun[1] = func(r rune) int { } panic("unreachable") } -fun[0] = func(r rune) int { +acc[1] = true +fun[1] = func(r rune) int { switch(r) { - case 45: return 1 + case 45: return -1 default: switch { default: return -1 @@ -466,10 +466,9 @@ a0[2].id = 2 { var acc [2]bool var fun [2]func(rune) int -acc[1] = true -fun[1] = func(r rune) int { +fun[0] = func(r rune) int { switch(r) { - case 58: return -1 + case 58: return 1 default: switch { default: return -1 @@ -477,9 +476,10 @@ fun[1] = func(r rune) int { } panic("unreachable") } -fun[0] = func(r rune) int { +acc[1] = true +fun[1] = func(r rune) int { switch(r) { - case 58: return 1 + case 58: return -1 default: switch { default: return -1 @@ -550,10 +550,9 @@ a0[5].id = 5 { var acc [2]bool var fun [2]func(rune) int -acc[1] = true -fun[1] = func(r rune) int { +fun[0] = func(r rune) int { switch(r) { - case 41: return -1 + case 41: return 1 default: switch { default: return -1 @@ -561,9 +560,10 @@ fun[1] = func(r rune) int { } panic("unreachable") } -fun[0] = func(r rune) int { +acc[1] = true +fun[1] = func(r rune) int { switch(r) { - case 41: return 1 + case 41: return -1 default: switch { default: return -1 @@ -578,10 +578,9 @@ a0[6].id = 6 { var acc [2]bool var fun [2]func(rune) int -acc[1] = true -fun[1] = func(r rune) int { +fun[0] = func(r rune) int { switch(r) { - case 62: return -1 + case 62: return 1 default: switch { default: return -1 @@ -589,9 +588,10 @@ fun[1] = func(r rune) int { } panic("unreachable") } -fun[0] = func(r rune) int { +acc[1] = true +fun[1] = func(r rune) int { switch(r) { - case 62: return 1 + case 62: return -1 default: switch { default: return -1 @@ -634,9 +634,10 @@ a0[8].id = 8 { var acc [2]bool var fun [2]func(rune) int -fun[0] = func(r rune) int { +acc[1] = true +fun[1] = func(r rune) int { switch(r) { - case 61: return 1 + case 61: return -1 default: switch { default: return -1 @@ -644,10 +645,9 @@ fun[0] = func(r rune) int { } panic("unreachable") } -acc[1] = true -fun[1] = func(r rune) int { +fun[0] = func(r rune) int { switch(r) { - case 61: return -1 + case 61: return 1 default: switch { default: return -1 @@ -662,52 +662,11 @@ a0[9].id = 9 { var acc [8]bool var fun [8]func(rune) int -acc[3] = true -fun[3] = func(r rune) int { - switch(r) { - case 45: return -1 - case 46: return 4 - default: - switch { - case 48 <= r && r <= 48: return 5 - case 49 <= r && r <= 57: return 5 - default: return -1 - } - } - panic("unreachable") -} -fun[0] = func(r rune) int { - switch(r) { - case 45: return 1 - case 46: return -1 - default: - switch { - case 48 <= r && r <= 48: return 2 - case 49 <= r && r <= 57: return 3 - default: return -1 - } - } - panic("unreachable") -} -acc[7] = true -fun[7] = func(r rune) int { - switch(r) { - case 45: return -1 - case 46: return -1 - default: - switch { - case 48 <= r && r <= 48: return 7 - case 49 <= r && r <= 57: return 7 - default: return -1 - } - } - panic("unreachable") -} acc[2] = true fun[2] = func(r rune) int { switch(r) { - case 46: return 4 case 45: return -1 + case 46: return 4 default: switch { case 48 <= r && r <= 48: return -1 @@ -717,10 +676,23 @@ fun[2] = func(r rune) int { } panic("unreachable") } +fun[4] = func(r rune) int { + switch(r) { + case 45: return -1 + case 46: return -1 + default: + switch { + case 48 <= r && r <= 48: return 6 + case 49 <= r && r <= 57: return 6 + default: return -1 + } + } + panic("unreachable") +} fun[1] = func(r rune) int { switch(r) { - case 46: return -1 case 45: return -1 + case 46: return -1 default: switch { case 48 <= r && r <= 48: return 2 @@ -730,6 +702,33 @@ fun[1] = func(r rune) int { } panic("unreachable") } +fun[0] = func(r rune) int { + switch(r) { + case 46: return -1 + case 45: return 1 + default: + switch { + case 48 <= r && r <= 48: return 2 + case 49 <= r && r <= 57: return 3 + default: return -1 + } + } + panic("unreachable") +} +acc[5] = true +fun[5] = func(r rune) int { + switch(r) { + case 46: return 4 + case 45: return -1 + default: + switch { + case 48 <= r && r <= 48: return 5 + case 49 <= r && r <= 57: return 5 + default: return -1 + } + } + panic("unreachable") +} acc[6] = true fun[6] = func(r rune) int { switch(r) { @@ -744,28 +743,29 @@ fun[6] = func(r rune) int { } panic("unreachable") } -fun[4] = func(r rune) int { +acc[3] = true +fun[3] = func(r rune) int { switch(r) { - case 46: return -1 + case 46: return 4 case 45: return -1 default: switch { - case 48 <= r && r <= 48: return 6 - case 49 <= r && r <= 57: return 6 + case 48 <= r && r <= 48: return 5 + case 49 <= r && r <= 57: return 5 default: return -1 } } panic("unreachable") } -acc[5] = true -fun[5] = func(r rune) int { +acc[7] = true +fun[7] = func(r rune) int { switch(r) { + case 46: return -1 case 45: return -1 - case 46: return 4 default: switch { - case 48 <= r && r <= 48: return 5 - case 49 <= r && r <= 57: return 5 + case 48 <= r && r <= 48: return 7 + case 49 <= r && r <= 57: return 7 default: return -1 } } @@ -778,12 +778,11 @@ a0[10].id = 10 { var acc [2]bool var fun [2]func(rune) int -acc[1] = true -fun[1] = func(r rune) int { +fun[0] = func(r rune) int { switch(r) { case 10: return 1 - case 9: return 1 case 32: return 1 + case 9: return 1 default: switch { default: return -1 @@ -791,11 +790,12 @@ fun[1] = func(r rune) int { } panic("unreachable") } -fun[0] = func(r rune) int { +acc[1] = true +fun[1] = func(r rune) int { switch(r) { case 10: return 1 - case 9: return 1 case 32: return 1 + case 9: return 1 default: switch { default: return -1 @@ -812,18 +812,18 @@ var acc [2]bool var fun [2]func(rune) int fun[0] = func(r rune) int { switch(r) { - case 60: return -1 + case 43: return -1 case 9: return -1 case 62: return -1 - case 61: return -1 case 12: return -1 + case 60: return -1 + case 10: return -1 case 13: return -1 - case 32: return -1 + case 45: return -1 case 94: return -1 case 58: return -1 - case 10: return -1 - case 43: return -1 - case 45: return -1 + case 61: return -1 + case 32: return -1 default: switch { default: return 1 @@ -834,18 +834,18 @@ fun[0] = func(r rune) int { acc[1] = true fun[1] = func(r rune) int { switch(r) { - case 62: return -1 - case 61: return -1 - case 12: return -1 case 13: return -1 - case 32: return -1 + case 45: return -1 case 94: return -1 case 58: return -1 - case 10: return -1 + case 61: return -1 + case 32: return -1 case 43: return -1 - case 45: return -1 - case 60: return -1 case 9: return -1 + case 62: return -1 + case 12: return -1 + case 60: return -1 + case 10: return -1 default: switch { default: return 1 @@ -962,31 +962,31 @@ func (yylex Lexer) Lex(lval *yySymType) int { { lval.s = yylex.Text()[1:len(yylex.Text())-1] logDebugTokens("PHRASE - %s", lval.s); - return PHRASE + return tPHRASE } case 1: //\+/ -{ logDebugTokens("PLUS"); return PLUS } +{ logDebugTokens("PLUS"); return tPLUS } case 2: //-/ -{ logDebugTokens("MINUS"); return MINUS } +{ logDebugTokens("MINUS"); return tMINUS } case 3: //:/ -{ logDebugTokens("COLON"); return COLON } +{ logDebugTokens("COLON"); return tCOLON } case 4: //^/ -{ logDebugTokens("BOOST"); return BOOST } +{ logDebugTokens("BOOST"); return tBOOST } case 5: //\(/ -{ logDebugTokens("LPAREN"); return LPAREN } +{ logDebugTokens("LPAREN"); return tLPAREN } case 6: //\)/ -{ logDebugTokens("RPAREN"); return RPAREN } +{ logDebugTokens("RPAREN"); return tRPAREN } case 7: //>/ -{ logDebugTokens("GREATER"); return GREATER } +{ logDebugTokens("GREATER"); return tGREATER } case 8: //