(lex plpgsqlLexer, lval *plpgsqlSymType)
| 1047 | } |
| 1048 | |
| 1049 | func plpgsqllex1(lex plpgsqlLexer, lval *plpgsqlSymType) (char, token int) { |
| 1050 | token = 0 |
| 1051 | char = lex.Lex(lval) |
| 1052 | if char <= 0 { |
| 1053 | token = int(plpgsqlTok1[0]) |
| 1054 | goto out |
| 1055 | } |
| 1056 | if char < len(plpgsqlTok1) { |
| 1057 | token = int(plpgsqlTok1[char]) |
| 1058 | goto out |
| 1059 | } |
| 1060 | if char >= plpgsqlPrivate { |
| 1061 | if char < plpgsqlPrivate+len(plpgsqlTok2) { |
| 1062 | token = int(plpgsqlTok2[char-plpgsqlPrivate]) |
| 1063 | goto out |
| 1064 | } |
| 1065 | } |
| 1066 | for i := 0; i < len(plpgsqlTok3); i += 2 { |
| 1067 | token = int(plpgsqlTok3[i+0]) |
| 1068 | if token == char { |
| 1069 | token = int(plpgsqlTok3[i+1]) |
| 1070 | goto out |
| 1071 | } |
| 1072 | } |
| 1073 | |
| 1074 | out: |
| 1075 | if token == 0 { |
| 1076 | token = int(plpgsqlTok2[1]) /* unknown char */ |
| 1077 | } |
| 1078 | if plpgsqlDebug >= 3 { |
| 1079 | __yyfmt__.Printf("lex %s(%d)\n", plpgsqlTokname(token), uint(char)) |
| 1080 | } |
| 1081 | return char, token |
| 1082 | } |
| 1083 | |
| 1084 | func plpgsqlParse(plpgsqllex plpgsqlLexer) int { |
| 1085 | return plpgsqlNewParser().Parse(plpgsqllex) |
no test coverage detected
searching dependent graphs…