Extension, and col_description errors
See original GitHub issueSo I have 2 different errors.
One is related to CREATE EXTENSION IF when trying to use UUIDs:
Error: Syntax error at line 1 col 18:
CREATE EXTENSION IF
^
Unexpected word token: "IF". I did not expect any more input. Here is the state of my parse table:
kw_index β %word β
at Parser.feed (/home/bobby/phorm-new/node_modules/nearley/lib/nearley.js:343:27)
at _parse (/home/bobby/phorm-new/node_modules/pgsql-ast-parser/src/parser.ts:43:12)
at Object.parse (/home/bobby/phorm-new/node_modules/pgsql-ast-parser/src/parser.ts:24:18)
at Object.parseSql (/home/bobby/phorm-new/node_modules/pg-mem/src/parse-cache.ts:25:15)
at Query.parse (/home/bobby/phorm-new/node_modules/pg-mem/src/query.ts:80:16)
at Query.queries (/home/bobby/phorm-new/node_modules/pg-mem/src/query.ts:88:31)
at queries.next (<anonymous>)
at Query.query (/home/bobby/phorm-new/node_modules/pg-mem/src/query.ts:67:20)
at /home/bobby/phorm-new/node_modules/pg-mem/src/adapters.ts:81:80
at Timeout.task [as _onTimeout] (/home/bobby/phorm-new/node_modules/jsdom/lib/jsdom/browser/Window.js:391:19)
at listOnTimeout (internal/timers.js:554:17)
at processTimers (internal/timers.js:497:7)
The other seems to be the AST parser disliking column descriptions (or at least the function):
An insanely long AST error (I'm assuming)
Error: Syntax error at line 4 col 43:
pg_catalog.col_description(
^
Unexpected lparen token: "(". Instead, I was expecting to see one of the following:
A op_cast token based on:
expr_member β expr_member$subexpression$3 β %op_cast data_type
expr_array_index β β expr_member
expr_unary_add$macrocall$4 β β expr_array_index
expr_unary_add$macrocall$1 β β expr_unary_add$macrocall$4
expr_unary_add β β expr_unary_add$macrocall$1
expr_exp$macrocall$4 β β expr_unary_add
expr_exp$macrocall$1 β β expr_exp$macrocall$4
expr_exp β β expr_exp$macrocall$1
expr_mult$macrocall$4 β β expr_exp
expr_mult$macrocall$1 β β expr_mult$macrocall$4
expr_mult β β expr_mult$macrocall$1
expr_add$macrocall$4 β β expr_mult
expr_add$macrocall$1 β β expr_add$macrocall$4
expr_add β β expr_add$macrocall$1
expr_in$macrocall$4 β β expr_add
expr_in$macrocall$1 β β expr_in$macrocall$4
expr_in β β expr_in$macrocall$1
expr_like$macrocall$4 β β expr_in
expr_like$macrocall$1 β β expr_like$macrocall$4
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A lbracket token based on:
expr_array_index β expr_array_index$subexpression$1 β %lbracket expr_nostar %rbracket
expr_unary_add$macrocall$4 β β expr_array_index
expr_unary_add$macrocall$1 β β expr_unary_add$macrocall$4
expr_unary_add β β expr_unary_add$macrocall$1
expr_exp$macrocall$4 β β expr_unary_add
expr_exp$macrocall$1 β β expr_exp$macrocall$4
expr_exp β β expr_exp$macrocall$1
expr_mult$macrocall$4 β β expr_exp
expr_mult$macrocall$1 β β expr_mult$macrocall$4
expr_mult β β expr_mult$macrocall$1
expr_add$macrocall$4 β β expr_mult
expr_add$macrocall$1 β β expr_add$macrocall$4
expr_add β β expr_add$macrocall$1
expr_in$macrocall$4 β β expr_add
expr_in$macrocall$1 β β expr_in$macrocall$4
expr_in β β expr_in$macrocall$1
expr_like$macrocall$4 β β expr_in
expr_like$macrocall$1 β β expr_like$macrocall$4
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A op_member token based on:
ops_member$subexpression$1 β β %op_member
ops_member β β ops_member$subexpression$1
expr_member β expr_member$subexpression$1 β ops_member expr_member$subexpression$2
expr_array_index β β expr_member
expr_unary_add$macrocall$4 β β expr_array_index
expr_unary_add$macrocall$1 β β expr_unary_add$macrocall$4
expr_unary_add β β expr_unary_add$macrocall$1
expr_exp$macrocall$4 β β expr_unary_add
expr_exp$macrocall$1 β β expr_exp$macrocall$4
expr_exp β β expr_exp$macrocall$1
expr_mult$macrocall$4 β β expr_exp
expr_mult$macrocall$1 β β expr_mult$macrocall$4
expr_mult β β expr_mult$macrocall$1
expr_add$macrocall$4 β β expr_mult
expr_add$macrocall$1 β β expr_add$macrocall$4
expr_add β β expr_add$macrocall$1
expr_in$macrocall$4 β β expr_add
expr_in$macrocall$1 β β expr_in$macrocall$4
expr_in β β expr_in$macrocall$1
expr_like$macrocall$4 β β expr_in
expr_like$macrocall$1 β β expr_like$macrocall$4
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A op_membertext token based on:
ops_member$subexpression$1 β β %op_membertext
ops_member β β ops_member$subexpression$1
expr_member β expr_member$subexpression$1 β ops_member expr_member$subexpression$2
expr_array_index β β expr_member
expr_unary_add$macrocall$4 β β expr_array_index
expr_unary_add$macrocall$1 β β expr_unary_add$macrocall$4
expr_unary_add β β expr_unary_add$macrocall$1
expr_exp$macrocall$4 β β expr_unary_add
expr_exp$macrocall$1 β β expr_exp$macrocall$4
expr_exp β β expr_exp$macrocall$1
expr_mult$macrocall$4 β β expr_exp
expr_mult$macrocall$1 β β expr_mult$macrocall$4
expr_mult β β expr_mult$macrocall$1
expr_add$macrocall$4 β β expr_mult
expr_add$macrocall$1 β β expr_add$macrocall$4
expr_add β β expr_add$macrocall$1
expr_in$macrocall$4 β β expr_add
expr_in$macrocall$1 β β expr_in$macrocall$4
expr_in β β expr_in$macrocall$1
expr_like$macrocall$4 β β expr_in
expr_like$macrocall$1 β β expr_like$macrocall$4
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A op_exp token based on:
expr_exp$macrocall$2 β β %op_exp
expr_exp$macrocall$1 β expr_exp$macrocall$1$subexpression$1 β expr_exp$macrocall$2 expr_exp$macrocall$1$subexpression$2
expr_exp β β expr_exp$macrocall$1
expr_mult$macrocall$4 β β expr_exp
expr_mult$macrocall$1 β β expr_mult$macrocall$4
expr_mult β β expr_mult$macrocall$1
expr_add$macrocall$4 β β expr_mult
expr_add$macrocall$1 β β expr_add$macrocall$4
expr_add β β expr_add$macrocall$1
expr_in$macrocall$4 β β expr_add
expr_in$macrocall$1 β β expr_in$macrocall$4
expr_in β β expr_in$macrocall$1
expr_like$macrocall$4 β β expr_in
expr_like$macrocall$1 β β expr_like$macrocall$4
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A star token based on:
expr_mult$macrocall$2$subexpression$1 β β %star
expr_mult$macrocall$2 β β expr_mult$macrocall$2$subexpression$1
expr_mult$macrocall$1 β expr_mult$macrocall$1$subexpression$1 β expr_mult$macrocall$2 expr_mult$macrocall$1$subexpression$2
expr_mult β β expr_mult$macrocall$1
expr_add$macrocall$4 β β expr_mult
expr_add$macrocall$1 β β expr_add$macrocall$4
expr_add β β expr_add$macrocall$1
expr_in$macrocall$4 β β expr_add
expr_in$macrocall$1 β β expr_in$macrocall$4
expr_in β β expr_in$macrocall$1
expr_like$macrocall$4 β β expr_in
expr_like$macrocall$1 β β expr_like$macrocall$4
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A op_div token based on:
expr_mult$macrocall$2$subexpression$1 β β %op_div
expr_mult$macrocall$2 β β expr_mult$macrocall$2$subexpression$1
expr_mult$macrocall$1 β expr_mult$macrocall$1$subexpression$1 β expr_mult$macrocall$2 expr_mult$macrocall$1$subexpression$2
expr_mult β β expr_mult$macrocall$1
expr_add$macrocall$4 β β expr_mult
expr_add$macrocall$1 β β expr_add$macrocall$4
expr_add β β expr_add$macrocall$1
expr_in$macrocall$4 β β expr_add
expr_in$macrocall$1 β β expr_in$macrocall$4
expr_in β β expr_in$macrocall$1
expr_like$macrocall$4 β β expr_in
expr_like$macrocall$1 β β expr_like$macrocall$4
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A op_mod token based on:
expr_mult$macrocall$2$subexpression$1 β β %op_mod
expr_mult$macrocall$2 β β expr_mult$macrocall$2$subexpression$1
expr_mult$macrocall$1 β expr_mult$macrocall$1$subexpression$1 β expr_mult$macrocall$2 expr_mult$macrocall$1$subexpression$2
expr_mult β β expr_mult$macrocall$1
expr_add$macrocall$4 β β expr_mult
expr_add$macrocall$1 β β expr_add$macrocall$4
expr_add β β expr_add$macrocall$1
expr_in$macrocall$4 β β expr_add
expr_in$macrocall$1 β β expr_in$macrocall$4
expr_in β β expr_in$macrocall$1
expr_like$macrocall$4 β β expr_in
expr_like$macrocall$1 β β expr_like$macrocall$4
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A op_plus token based on:
expr_add$macrocall$2$subexpression$1 β β %op_plus
expr_add$macrocall$2 β β expr_add$macrocall$2$subexpression$1
expr_add$macrocall$1 β expr_add$macrocall$1$subexpression$1 β expr_add$macrocall$2 expr_add$macrocall$1$subexpression$2
expr_add β β expr_add$macrocall$1
expr_in$macrocall$4 β β expr_add
expr_in$macrocall$1 β β expr_in$macrocall$4
expr_in β β expr_in$macrocall$1
expr_like$macrocall$4 β β expr_in
expr_like$macrocall$1 β β expr_like$macrocall$4
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A op_minus token based on:
expr_add$macrocall$2$subexpression$1 β β %op_minus
expr_add$macrocall$2 β β expr_add$macrocall$2$subexpression$1
expr_add$macrocall$1 β expr_add$macrocall$1$subexpression$1 β expr_add$macrocall$2 expr_add$macrocall$1$subexpression$2
expr_add β β expr_add$macrocall$1
expr_in$macrocall$4 β β expr_add
expr_in$macrocall$1 β β expr_in$macrocall$4
expr_in β β expr_in$macrocall$1
expr_like$macrocall$4 β β expr_in
expr_like$macrocall$1 β β expr_like$macrocall$4
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A op_additive token based on:
expr_add$macrocall$2$subexpression$1 β β %op_additive
expr_add$macrocall$2 β β expr_add$macrocall$2$subexpression$1
expr_add$macrocall$1 β expr_add$macrocall$1$subexpression$1 β expr_add$macrocall$2 expr_add$macrocall$1$subexpression$2
expr_add β β expr_add$macrocall$1
expr_in$macrocall$4 β β expr_add
expr_in$macrocall$1 β β expr_in$macrocall$4
expr_in β β expr_in$macrocall$1
expr_like$macrocall$4 β β expr_in
expr_like$macrocall$1 β β expr_like$macrocall$4
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_not token based on:
ops_in$ebnf$1 β β %kw_not
ops_in β β ops_in$ebnf$1 %kw_in
expr_in$macrocall$2 β β ops_in
expr_in$macrocall$1 β expr_in$macrocall$1$subexpression$1 β expr_in$macrocall$2 expr_in$macrocall$1$subexpression$2
expr_in β β expr_in$macrocall$1
expr_like$macrocall$4 β β expr_in
expr_like$macrocall$1 β β expr_like$macrocall$4
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_in token based on:
ops_in β ops_in$ebnf$1 β %kw_in
expr_in$macrocall$2 β β ops_in
expr_in$macrocall$1 β expr_in$macrocall$1$subexpression$1 β expr_in$macrocall$2 expr_in$macrocall$1$subexpression$2
expr_in β β expr_in$macrocall$1
expr_like$macrocall$4 β β expr_in
expr_like$macrocall$1 β β expr_like$macrocall$4
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_not token based on:
ops_like_keywors$ebnf$1 β β %kw_not
ops_like_keywors β β ops_like_keywors$ebnf$1 ops_like_keywors$subexpression$1
ops_like β β ops_like_keywors
expr_like$macrocall$2 β β ops_like
expr_like$macrocall$1 β expr_like$macrocall$1$subexpression$1 β expr_like$macrocall$2 expr_like$macrocall$1$subexpression$2
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A op_like token based on:
ops_like_operators$subexpression$1 β β %op_like
ops_like_operators β β ops_like_operators$subexpression$1
ops_like β β ops_like_operators
expr_like$macrocall$2 β β ops_like
expr_like$macrocall$1 β expr_like$macrocall$1$subexpression$1 β expr_like$macrocall$2 expr_like$macrocall$1$subexpression$2
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A op_ilike token based on:
ops_like_operators$subexpression$2 β β %op_ilike
ops_like_operators β β ops_like_operators$subexpression$2
ops_like β β ops_like_operators
expr_like$macrocall$2 β β ops_like
expr_like$macrocall$1 β expr_like$macrocall$1$subexpression$1 β expr_like$macrocall$2 expr_like$macrocall$1$subexpression$2
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A op_not_like token based on:
ops_like_operators$subexpression$3 β β %op_not_like
ops_like_operators β β ops_like_operators$subexpression$3
ops_like β β ops_like_operators
expr_like$macrocall$2 β β ops_like
expr_like$macrocall$1 β expr_like$macrocall$1$subexpression$1 β expr_like$macrocall$2 expr_like$macrocall$1$subexpression$2
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A op_not_ilike token based on:
ops_like_operators$subexpression$4 β β %op_not_ilike
ops_like_operators β β ops_like_operators$subexpression$4
ops_like β β ops_like_operators
expr_like$macrocall$2 β β ops_like
expr_like$macrocall$1 β expr_like$macrocall$1$subexpression$1 β expr_like$macrocall$2 expr_like$macrocall$1$subexpression$2
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_like token based on:
ops_like_keywors$subexpression$1 β β %kw_like
ops_like_keywors β ops_like_keywors$ebnf$1 β ops_like_keywors$subexpression$1
ops_like β β ops_like_keywors
expr_like$macrocall$2 β β ops_like
expr_like$macrocall$1 β expr_like$macrocall$1$subexpression$1 β expr_like$macrocall$2 expr_like$macrocall$1$subexpression$2
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_ilike token based on:
ops_like_keywors$subexpression$1 β β %kw_ilike
ops_like_keywors β ops_like_keywors$ebnf$1 β ops_like_keywors$subexpression$1
ops_like β β ops_like_keywors
expr_like$macrocall$2 β β ops_like
expr_like$macrocall$1 β expr_like$macrocall$1$subexpression$1 β expr_like$macrocall$2 expr_like$macrocall$1$subexpression$2
expr_like β β expr_like$macrocall$1
expr_range$macrocall$5 β β expr_like
expr_range$macrocall$1 β β expr_range$macrocall$5
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_not token based on:
ops_between$ebnf$1 β β %kw_not
ops_between β β ops_between$ebnf$1 kw_between
expr_range$macrocall$2 β β ops_between
expr_range$macrocall$1 β expr_range$macrocall$1$subexpression$1 β expr_range$macrocall$2 expr_range$macrocall$1$subexpression$2 expr_range$macrocall$3 expr_range$macrocall$1$subexpression$3
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_is token based on:
expr_is β expr_is$subexpression$5 β %kw_is expr_is$ebnf$1 expr_is$subexpression$6
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A op_compare token based on:
expr_compare$macrocall$2 β β %op_compare
expr_compare$macrocall$1 β expr_compare$macrocall$1$subexpression$1 β expr_compare$macrocall$2 expr_compare$macrocall$1$subexpression$2
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_notnull token based on:
expr_is$subexpression$4 β β %kw_notnull
expr_is β expr_is$subexpression$3 β expr_is$subexpression$4
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_is token based on:
expr_is$subexpression$4 β β %kw_is kw_not_null
expr_is β expr_is$subexpression$3 β expr_is$subexpression$4
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_isnull token based on:
expr_is$subexpression$2 β β %kw_isnull
expr_is β expr_is$subexpression$1 β expr_is$subexpression$2
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_is token based on:
expr_is$subexpression$2 β β %kw_is %kw_null
expr_is β expr_is$subexpression$1 β expr_is$subexpression$2
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A word token based on:
kw_between β β %word
ops_between β ops_between$ebnf$1 β kw_between
expr_range$macrocall$2 β β ops_between
expr_range$macrocall$1 β expr_range$macrocall$1$subexpression$1 β expr_range$macrocall$2 expr_range$macrocall$1$subexpression$2 expr_range$macrocall$3 expr_range$macrocall$1$subexpression$3
expr_range β β expr_range$macrocall$1
expr_compare$macrocall$4 β β expr_range
expr_compare$macrocall$1 β β expr_compare$macrocall$4
expr_compare β β expr_compare$macrocall$1
expr_is β β expr_compare
expr_eq$macrocall$4 β β expr_is
expr_eq$macrocall$1 β β expr_eq$macrocall$4
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A op_eq token based on:
expr_eq$macrocall$2$subexpression$1 β β %op_eq
expr_eq$macrocall$2 β β expr_eq$macrocall$2$subexpression$1
expr_eq$macrocall$1 β expr_eq$macrocall$1$subexpression$1 β expr_eq$macrocall$2 expr_eq$macrocall$1$subexpression$2
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A op_neq token based on:
expr_eq$macrocall$2$subexpression$1 β β %op_neq
expr_eq$macrocall$2 β β expr_eq$macrocall$2$subexpression$1
expr_eq$macrocall$1 β expr_eq$macrocall$1$subexpression$1 β expr_eq$macrocall$2 expr_eq$macrocall$1$subexpression$2
expr_eq β β expr_eq$macrocall$1
expr_not$macrocall$4 β β expr_eq
expr_not$macrocall$1 β β expr_not$macrocall$4
expr_not β β expr_not$macrocall$1
expr_and$macrocall$4 β β expr_not
expr_and$macrocall$1 β β expr_and$macrocall$4
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_and token based on:
expr_and$macrocall$2 β β %kw_and
expr_and$macrocall$1 β expr_and$macrocall$1$subexpression$1 β expr_and$macrocall$2 expr_and$macrocall$1$subexpression$2
expr_and β β expr_and$macrocall$1
expr_or$macrocall$4 β β expr_and
expr_or$macrocall$1 β β expr_or$macrocall$4
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_or token based on:
expr_or$macrocall$2 β β %kw_or
expr_or$macrocall$1 β expr_or$macrocall$1$subexpression$1 β expr_or$macrocall$2 expr_or$macrocall$1$subexpression$2
expr_or β β expr_or$macrocall$1
expr_nostar β β expr_or
expr β β expr_nostar
select_expr_list_item β β expr select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_as token based on:
ident_aliased$subexpression$1 β β %kw_as ident
ident_aliased β β ident_aliased$subexpression$1
select_expr_list_item$ebnf$1 β β ident_aliased
select_expr_list_item β expr β select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A word token based on:
word β β %word
ident β β word
ident_aliased β β ident
select_expr_list_item$ebnf$1 β β ident_aliased
select_expr_list_item β expr β select_expr_list_item$ebnf$1
select_expr_list_aliased$ebnf$1$subexpression$1 β comma β select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A comma token based on:
comma β β %comma
select_expr_list_aliased$ebnf$1$subexpression$1 β β comma select_expr_list_item
select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1 β select_expr_list_aliased$ebnf$1$subexpression$1
select_expr_list_aliased β select_expr_list_item β select_expr_list_aliased$ebnf$1
select_what β %kw_select β select_expr_list_aliased
select_statement β β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_from token based on:
select_from β β %kw_from select_subject
select_statement$ebnf$1 β β select_from
select_statement β select_what β select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_where token based on:
select_where β β %kw_where expr
select_statement$ebnf$2 β β select_where
select_statement β select_what select_statement$ebnf$1 β select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_group token based on:
select_groupby β β %kw_group kw_by expr_list_raw
select_statement$ebnf$3 β β select_groupby
select_statement β select_what select_statement$ebnf$1 select_statement$ebnf$2 β select_statement$ebnf$3 select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_order token based on:
select_order_by$subexpression$1 β β %kw_order kw_by
select_order_by β β select_order_by$subexpression$1 select_order_by_expr select_order_by$ebnf$1
select_statement$ebnf$4 β β select_order_by
select_statement β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 β select_statement$ebnf$4 select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_limit token based on:
select_limit$ebnf$1$subexpression$1 β β %kw_limit int
select_limit$ebnf$1 β β select_limit$ebnf$1$subexpression$1
select_limit β β select_limit$ebnf$1 select_limit$ebnf$2 select_limit$ebnf$3
select_statement β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 β select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_offset token based on:
select_limit$ebnf$2$subexpression$1 β β %kw_offset int select_limit$ebnf$2$subexpression$1$ebnf$1
select_limit$ebnf$2 β β select_limit$ebnf$2$subexpression$1
select_limit β select_limit$ebnf$1 β select_limit$ebnf$2 select_limit$ebnf$3
select_statement β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 β select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A kw_fetch token based on:
select_limit$ebnf$3$subexpression$1 β β %kw_fetch select_limit$ebnf$3$subexpression$1$ebnf$1 int select_limit$ebnf$3$subexpression$1$ebnf$2
select_limit$ebnf$3 β β select_limit$ebnf$3$subexpression$1
select_limit β select_limit$ebnf$1 select_limit$ebnf$2 β select_limit$ebnf$3
select_statement β select_what select_statement$ebnf$1 select_statement$ebnf$2 select_statement$ebnf$3 select_statement$ebnf$4 β select_limit
statement β β select_statement
main β main$ebnf$1 β statement main$ebnf$2 main$ebnf$3
A semicolon token based on:
statement_separator β β %semicolon
main$ebnf$3 β main$ebnf$3 β statement_separator
main β main$ebnf$1 statement main$ebnf$2 β main$ebnf$3
at Parser.feed (/home/bobby/phorm-new/node_modules/nearley/lib/nearley.js:343:27)
at _parse (/home/bobby/phorm-new/node_modules/pgsql-ast-parser/src/parser.ts:43:12)
at Object.parse (/home/bobby/phorm-new/node_modules/pgsql-ast-parser/src/parser.ts:24:18)
at Object.parseSql (/home/bobby/phorm-new/node_modules/pg-mem/src/parse-cache.ts:25:15)
at Query.parse (/home/bobby/phorm-new/node_modules/pg-mem/src/query.ts:80:16)
at Query.queries (/home/bobby/phorm-new/node_modules/pg-mem/src/query.ts:88:31)
at queries.next (<anonymous>)
at Query.query (/home/bobby/phorm-new/node_modules/pg-mem/src/query.ts:67:20)
at /home/bobby/phorm-new/node_modules/pg-mem/src/adapters.ts:81:80
at Timeout.task [as _onTimeout] (/home/bobby/phorm-new/node_modules/jsdom/lib/jsdom/browser/Window.js:391:19)
at listOnTimeout (internal/timers.js:554:17)
at processTimers (internal/timers.js:497:7)
I know this library does not have advanced function yet, but being able to roll extensions and column descriptions might be helpful; even if it completely ignores the type and uses string, and for descriptions it just ignores them.
Issue Analytics
- State:
- Created 3 years ago
- Comments:11 (6 by maintainers)
Top Results From Across the Web
Prevent Errors Extension
Extension for quick retrieval of passwords, and preventing errors when you visit certain sites.
Read more >Time Extension Error Codes - NET
Error Flag Description. TTT. TE Days in SM do not match TE days in the Contract Change Tracking System. DDD. Original Days +...
Read more >How can I debug Javascript errors while writing Chrome ...
Go to the Extensions page (chrome://extensions), and make sure Developer mode is still enabled. The Extensions page doesn't need to be open for...
Read more >VM extension provisioning errors in Virtual Machine Scale ...
Steps to resolve VM extension provisioning errors in a Virtual Machine Scale Set.
Read more >Most Useful VS Code Extension To Find Errors & Warnings
Error Lens is an extension which allows you to see error, warning and diagnostic messages in line with your code without having to...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found

Yes it is! Sorry, forgot to mention that part lol
Ok, I understand π
Is it working now ?