Terminals unused in grammar

   ERROR
   IGNORED_WORD


Grammar

    0 $accept: start $end

    1 start: DUMMY_SELECT_CLAUSE select_root
    2      | DUMMY_INSERT_CLAUSE insert_root

    3 select_root: WHERE cond_expr end_flag
    4            | join_expr_list end_flag
    5            | join_expr_list WHERE cond_expr end_flag
    6            | error

    7 end_flag: END_WHERE
    8         | ')'
    9         | ';'
   10         | END_P

   11 join_expr_list: join_on_expr
   12               | join_expr_list join_on_expr

   13 join_on_expr: join_expr ON cond_expr

   14 join_expr: JOIN NAME_OB
   15          | JOIN NAME_OB '.' NAME_OB
   16          | JOIN NAME_OB NAME_OB
   17          | JOIN NAME_OB AS NAME_OB
   18          | JOIN NAME_OB '.' NAME_OB NAME_OB
   19          | JOIN NAME_OB '.' NAME_OB AS NAME_OB

   20 cond_expr: bool_pri
   21          | cond_expr AND_OP bool_pri
   22          | '(' cond_expr AND_OP bool_pri ')'
   23          | cond_expr OR_OP bool_pri
   24          | '(' cond_expr OR_OP bool_pri ')'

   25 bool_pri: expr comp expr
   26         | '(' expr comp expr ')'
   27         | expr IN '(' in_expr_list ')'
   28         | expr BETWEEN expr AND_OP expr
   29         | ROWID COMP_EQ STR_VAL

   30 comp: COMP_EQ
   31     | COMP_NSEQ
   32     | COMP_GE
   33     | COMP_GT
   34     | COMP_LE
   35     | COMP_LT
   36     | COMP_NE

   37 in_expr_list: expr
   38             | in_expr_list ',' expr

   39 expr: token_list

   40 token_list: token
   41           | token_list token

   42 func_param_list: /* empty */
   43                | token_list ',' token_list
   44                | func_param_list ',' token_list

   45 token: NAME_OB
   46      | NAME_OB '.' NAME_OB
   47      | NAME_OB '.' NAME_OB '.' NAME_OB
   48      | NAME_OB '(' token_list ')'
   49      | NAME_OB '(' func_param_list ')'
   50      | INT_VAL
   51      | STR_VAL
   52      | operator
   53      | PLACE_HOLDER
   54      | POS_PLACE_HOLDER

   55 operator: '+'
   56         | '-'
   57         | '*'
   58         | '/'
   59         | '%'
   60         | '&'
   61         | '!'

   62 insert_root: opt_column_list VALUES values_expr_lists end_flag
   63            | SET set_expr opt_where_clause end_flag
   64            | ON cond_expr end_flag
   65            | select_root

   66 values_expr_lists: '(' values_expr_list ')'
   67                  | values_expr_lists ',' '(' values_expr_list ')'

   68 opt_column_list: /* empty */
   69                | '(' column_list ')'

   70 column_list: opt_column
   71            | column_list ',' opt_column

   72 opt_column: NAME_OB

   73 values_expr_list: expr
   74                 | values_expr_list ',' expr

   75 set_expr: bool_pri
   76         | set_expr ',' bool_pri

   77 opt_where_clause: /* empty */
   78                 | WHERE cond_expr


Terminals, with rules where they appear

$end (0) 0
'!' (33) 61
'%' (37) 59
'&' (38) 60
'(' (40) 22 24 26 27 48 49 66 67 69
')' (41) 8 22 24 26 27 48 49 66 67 69
'*' (42) 57
'+' (43) 55
',' (44) 38 43 44 67 71 74 76
'-' (45) 56
'.' (46) 15 18 19 46 47
'/' (47) 58
';' (59) 9
error (256) 6
DUMMY_SELECT_CLAUSE (258) 1
DUMMY_INSERT_CLAUSE (259) 2
WHERE (260) 3 5 78
AS (261) 17 19
VALUES (262) 62
SET (263) 63
END_WHERE (264) 7
JOIN (265) 14 15 16 17 18 19
AND_OP (266) 21 22 28
OR_OP (267) 23 24
IN (268) 27
ON (269) 13 64
BETWEEN (270) 28
ROWID (271) 29
COMP_EQ (272) 29 30
COMP_NSEQ (273) 31
COMP_GE (274) 32
COMP_GT (275) 33
COMP_LE (276) 34
COMP_LT (277) 35
COMP_NE (278) 36
PLACE_HOLDER (279) 53
END_P (280) 10
ERROR (281)
IGNORED_WORD (282)
NAME_OB (283) 14 15 16 17 18 19 45 46 47 48 49 72
STR_VAL (284) 29 51
INT_VAL (285) 50
POS_PLACE_HOLDER (286) 54


Nonterminals, with rules where they appear

$accept (44)
    on left: 0
start (45)
    on left: 1 2, on right: 0
select_root (46)
    on left: 3 4 5 6, on right: 1 65
end_flag (47)
    on left: 7 8 9 10, on right: 3 4 5 62 63 64
join_expr_list (48)
    on left: 11 12, on right: 4 5 12
join_on_expr (49)
    on left: 13, on right: 11 12
join_expr (50)
    on left: 14 15 16 17 18 19, on right: 13
cond_expr (51)
    on left: 20 21 22 23 24, on right: 3 5 13 21 22 23 24 64 78
bool_pri (52)
    on left: 25 26 27 28 29, on right: 20 21 22 23 24 75 76
comp (53)
    on left: 30 31 32 33 34 35 36, on right: 25 26
in_expr_list (54)
    on left: 37 38, on right: 27 38
expr (55)
    on left: 39, on right: 25 26 27 28 37 38 73 74
token_list (56)
    on left: 40 41, on right: 39 41 43 44 48
func_param_list (57)
    on left: 42 43 44, on right: 44 49
token (58)
    on left: 45 46 47 48 49 50 51 52 53 54, on right: 40 41
operator (59)
    on left: 55 56 57 58 59 60 61, on right: 52
insert_root (60)
    on left: 62 63 64 65, on right: 2
values_expr_lists (61)
    on left: 66 67, on right: 62 67
opt_column_list (62)
    on left: 68 69, on right: 62
column_list (63)
    on left: 70 71, on right: 69 71
opt_column (64)
    on left: 72, on right: 70 71
values_expr_list (65)
    on left: 73 74, on right: 66 67 74
set_expr (66)
    on left: 75 76, on right: 63 76
opt_where_clause (67)
    on left: 77 78, on right: 63


state 0

    0 $accept: . start $end

    DUMMY_SELECT_CLAUSE  shift, and go to state 1
    DUMMY_INSERT_CLAUSE  shift, and go to state 2

    start  go to state 3


state 1

    1 start: DUMMY_SELECT_CLAUSE . select_root

    error  shift, and go to state 4
    WHERE  shift, and go to state 5
    JOIN   shift, and go to state 6

    select_root     go to state 7
    join_expr_list  go to state 8
    join_on_expr    go to state 9
    join_expr       go to state 10


state 2

    2 start: DUMMY_INSERT_CLAUSE . insert_root

    error  shift, and go to state 4
    WHERE  shift, and go to state 5
    SET    shift, and go to state 11
    JOIN   shift, and go to state 6
    ON     shift, and go to state 12
    '('    shift, and go to state 13

    VALUES  reduce using rule 68 (opt_column_list)

    select_root      go to state 14
    join_expr_list   go to state 8
    join_on_expr     go to state 9
    join_expr        go to state 10
    insert_root      go to state 15
    opt_column_list  go to state 16


state 3

    0 $accept: start . $end

    $end  shift, and go to state 17


state 4

    6 select_root: error .

    $default  reduce using rule 6 (select_root)


state 5

    3 select_root: WHERE . cond_expr end_flag

    ROWID             shift, and go to state 18
    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '('               shift, and go to state 24
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    cond_expr   go to state 32
    bool_pri    go to state 33
    expr        go to state 34
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 6

   14 join_expr: JOIN . NAME_OB
   15          | JOIN . NAME_OB '.' NAME_OB
   16          | JOIN . NAME_OB NAME_OB
   17          | JOIN . NAME_OB AS NAME_OB
   18          | JOIN . NAME_OB '.' NAME_OB NAME_OB
   19          | JOIN . NAME_OB '.' NAME_OB AS NAME_OB

    NAME_OB  shift, and go to state 38


state 7

    1 start: DUMMY_SELECT_CLAUSE select_root .

    $default  reduce using rule 1 (start)


state 8

    4 select_root: join_expr_list . end_flag
    5            | join_expr_list . WHERE cond_expr end_flag
   12 join_expr_list: join_expr_list . join_on_expr

    WHERE      shift, and go to state 39
    END_WHERE  shift, and go to state 40
    JOIN       shift, and go to state 6
    END_P      shift, and go to state 41
    ')'        shift, and go to state 42
    ';'        shift, and go to state 43

    end_flag      go to state 44
    join_on_expr  go to state 45
    join_expr     go to state 10


state 9

   11 join_expr_list: join_on_expr .

    $default  reduce using rule 11 (join_expr_list)


state 10

   13 join_on_expr: join_expr . ON cond_expr

    ON  shift, and go to state 46


state 11

   63 insert_root: SET . set_expr opt_where_clause end_flag

    ROWID             shift, and go to state 18
    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '('               shift, and go to state 47
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    bool_pri    go to state 48
    expr        go to state 34
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37
    set_expr    go to state 49


state 12

   64 insert_root: ON . cond_expr end_flag

    ROWID             shift, and go to state 18
    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '('               shift, and go to state 24
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    cond_expr   go to state 50
    bool_pri    go to state 33
    expr        go to state 34
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 13

   69 opt_column_list: '(' . column_list ')'

    NAME_OB  shift, and go to state 51

    column_list  go to state 52
    opt_column   go to state 53


state 14

   65 insert_root: select_root .

    $default  reduce using rule 65 (insert_root)


state 15

    2 start: DUMMY_INSERT_CLAUSE insert_root .

    $default  reduce using rule 2 (start)


state 16

   62 insert_root: opt_column_list . VALUES values_expr_lists end_flag

    VALUES  shift, and go to state 54


state 17

    0 $accept: start $end .

    $default  accept


state 18

   29 bool_pri: ROWID . COMP_EQ STR_VAL

    COMP_EQ  shift, and go to state 55


state 19

   53 token: PLACE_HOLDER .

    $default  reduce using rule 53 (token)


state 20

   45 token: NAME_OB .
   46      | NAME_OB . '.' NAME_OB
   47      | NAME_OB . '.' NAME_OB '.' NAME_OB
   48      | NAME_OB . '(' token_list ')'
   49      | NAME_OB . '(' func_param_list ')'

    '.'  shift, and go to state 56
    '('  shift, and go to state 57

    $default  reduce using rule 45 (token)


state 21

   51 token: STR_VAL .

    $default  reduce using rule 51 (token)


state 22

   50 token: INT_VAL .

    $default  reduce using rule 50 (token)


state 23

   54 token: POS_PLACE_HOLDER .

    $default  reduce using rule 54 (token)


state 24

   22 cond_expr: '(' . cond_expr AND_OP bool_pri ')'
   24          | '(' . cond_expr OR_OP bool_pri ')'
   26 bool_pri: '(' . expr comp expr ')'

    ROWID             shift, and go to state 18
    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '('               shift, and go to state 24
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    cond_expr   go to state 58
    bool_pri    go to state 33
    expr        go to state 59
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 25

   55 operator: '+' .

    $default  reduce using rule 55 (operator)


state 26

   56 operator: '-' .

    $default  reduce using rule 56 (operator)


state 27

   57 operator: '*' .

    $default  reduce using rule 57 (operator)


state 28

   58 operator: '/' .

    $default  reduce using rule 58 (operator)


state 29

   59 operator: '%' .

    $default  reduce using rule 59 (operator)


state 30

   60 operator: '&' .

    $default  reduce using rule 60 (operator)


state 31

   61 operator: '!' .

    $default  reduce using rule 61 (operator)


state 32

    3 select_root: WHERE cond_expr . end_flag
   21 cond_expr: cond_expr . AND_OP bool_pri
   23          | cond_expr . OR_OP bool_pri

    END_WHERE  shift, and go to state 40
    AND_OP     shift, and go to state 60
    OR_OP      shift, and go to state 61
    END_P      shift, and go to state 41
    ')'        shift, and go to state 42
    ';'        shift, and go to state 43

    end_flag  go to state 62


state 33

   20 cond_expr: bool_pri .

    $default  reduce using rule 20 (cond_expr)


state 34

   25 bool_pri: expr . comp expr
   27         | expr . IN '(' in_expr_list ')'
   28         | expr . BETWEEN expr AND_OP expr

    IN         shift, and go to state 63
    BETWEEN    shift, and go to state 64
    COMP_EQ    shift, and go to state 65
    COMP_NSEQ  shift, and go to state 66
    COMP_GE    shift, and go to state 67
    COMP_GT    shift, and go to state 68
    COMP_LE    shift, and go to state 69
    COMP_LT    shift, and go to state 70
    COMP_NE    shift, and go to state 71

    comp  go to state 72


state 35

   39 expr: token_list .
   41 token_list: token_list . token

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    $default  reduce using rule 39 (expr)

    token     go to state 73
    operator  go to state 37


state 36

   40 token_list: token .

    $default  reduce using rule 40 (token_list)


state 37

   52 token: operator .

    $default  reduce using rule 52 (token)


state 38

   14 join_expr: JOIN NAME_OB .
   15          | JOIN NAME_OB . '.' NAME_OB
   16          | JOIN NAME_OB . NAME_OB
   17          | JOIN NAME_OB . AS NAME_OB
   18          | JOIN NAME_OB . '.' NAME_OB NAME_OB
   19          | JOIN NAME_OB . '.' NAME_OB AS NAME_OB

    AS       shift, and go to state 74
    NAME_OB  shift, and go to state 75
    '.'      shift, and go to state 76

    $default  reduce using rule 14 (join_expr)


state 39

    5 select_root: join_expr_list WHERE . cond_expr end_flag

    ROWID             shift, and go to state 18
    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '('               shift, and go to state 24
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    cond_expr   go to state 77
    bool_pri    go to state 33
    expr        go to state 34
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 40

    7 end_flag: END_WHERE .

    $default  reduce using rule 7 (end_flag)


state 41

   10 end_flag: END_P .

    $default  reduce using rule 10 (end_flag)


state 42

    8 end_flag: ')' .

    $default  reduce using rule 8 (end_flag)


state 43

    9 end_flag: ';' .

    $default  reduce using rule 9 (end_flag)


state 44

    4 select_root: join_expr_list end_flag .

    $default  reduce using rule 4 (select_root)


state 45

   12 join_expr_list: join_expr_list join_on_expr .

    $default  reduce using rule 12 (join_expr_list)


state 46

   13 join_on_expr: join_expr ON . cond_expr

    ROWID             shift, and go to state 18
    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '('               shift, and go to state 24
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    cond_expr   go to state 78
    bool_pri    go to state 33
    expr        go to state 34
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 47

   26 bool_pri: '(' . expr comp expr ')'

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    expr        go to state 79
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 48

   75 set_expr: bool_pri .

    $default  reduce using rule 75 (set_expr)


state 49

   63 insert_root: SET set_expr . opt_where_clause end_flag
   76 set_expr: set_expr . ',' bool_pri

    WHERE  shift, and go to state 80
    ','    shift, and go to state 81

    $default  reduce using rule 77 (opt_where_clause)

    opt_where_clause  go to state 82


state 50

   21 cond_expr: cond_expr . AND_OP bool_pri
   23          | cond_expr . OR_OP bool_pri
   64 insert_root: ON cond_expr . end_flag

    END_WHERE  shift, and go to state 40
    AND_OP     shift, and go to state 60
    OR_OP      shift, and go to state 61
    END_P      shift, and go to state 41
    ')'        shift, and go to state 42
    ';'        shift, and go to state 43

    end_flag  go to state 83


state 51

   72 opt_column: NAME_OB .

    $default  reduce using rule 72 (opt_column)


state 52

   69 opt_column_list: '(' column_list . ')'
   71 column_list: column_list . ',' opt_column

    ')'  shift, and go to state 84
    ','  shift, and go to state 85


state 53

   70 column_list: opt_column .

    $default  reduce using rule 70 (column_list)


state 54

   62 insert_root: opt_column_list VALUES . values_expr_lists end_flag

    '('  shift, and go to state 86

    values_expr_lists  go to state 87


state 55

   29 bool_pri: ROWID COMP_EQ . STR_VAL

    STR_VAL  shift, and go to state 88


state 56

   46 token: NAME_OB '.' . NAME_OB
   47      | NAME_OB '.' . NAME_OB '.' NAME_OB

    NAME_OB  shift, and go to state 89


state 57

   48 token: NAME_OB '(' . token_list ')'
   49      | NAME_OB '(' . func_param_list ')'

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    $default  reduce using rule 42 (func_param_list)

    token_list       go to state 90
    func_param_list  go to state 91
    token            go to state 36
    operator         go to state 37


state 58

   21 cond_expr: cond_expr . AND_OP bool_pri
   22          | '(' cond_expr . AND_OP bool_pri ')'
   23          | cond_expr . OR_OP bool_pri
   24          | '(' cond_expr . OR_OP bool_pri ')'

    AND_OP  shift, and go to state 92
    OR_OP   shift, and go to state 93


state 59

   25 bool_pri: expr . comp expr
   26         | '(' expr . comp expr ')'
   27         | expr . IN '(' in_expr_list ')'
   28         | expr . BETWEEN expr AND_OP expr

    IN         shift, and go to state 63
    BETWEEN    shift, and go to state 64
    COMP_EQ    shift, and go to state 65
    COMP_NSEQ  shift, and go to state 66
    COMP_GE    shift, and go to state 67
    COMP_GT    shift, and go to state 68
    COMP_LE    shift, and go to state 69
    COMP_LT    shift, and go to state 70
    COMP_NE    shift, and go to state 71

    comp  go to state 94


state 60

   21 cond_expr: cond_expr AND_OP . bool_pri

    ROWID             shift, and go to state 18
    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '('               shift, and go to state 47
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    bool_pri    go to state 95
    expr        go to state 34
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 61

   23 cond_expr: cond_expr OR_OP . bool_pri

    ROWID             shift, and go to state 18
    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '('               shift, and go to state 47
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    bool_pri    go to state 96
    expr        go to state 34
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 62

    3 select_root: WHERE cond_expr end_flag .

    $default  reduce using rule 3 (select_root)


state 63

   27 bool_pri: expr IN . '(' in_expr_list ')'

    '('  shift, and go to state 97


state 64

   28 bool_pri: expr BETWEEN . expr AND_OP expr

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    expr        go to state 98
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 65

   30 comp: COMP_EQ .

    $default  reduce using rule 30 (comp)


state 66

   31 comp: COMP_NSEQ .

    $default  reduce using rule 31 (comp)


state 67

   32 comp: COMP_GE .

    $default  reduce using rule 32 (comp)


state 68

   33 comp: COMP_GT .

    $default  reduce using rule 33 (comp)


state 69

   34 comp: COMP_LE .

    $default  reduce using rule 34 (comp)


state 70

   35 comp: COMP_LT .

    $default  reduce using rule 35 (comp)


state 71

   36 comp: COMP_NE .

    $default  reduce using rule 36 (comp)


state 72

   25 bool_pri: expr comp . expr

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    expr        go to state 99
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 73

   41 token_list: token_list token .

    $default  reduce using rule 41 (token_list)


state 74

   17 join_expr: JOIN NAME_OB AS . NAME_OB

    NAME_OB  shift, and go to state 100


state 75

   16 join_expr: JOIN NAME_OB NAME_OB .

    $default  reduce using rule 16 (join_expr)


state 76

   15 join_expr: JOIN NAME_OB '.' . NAME_OB
   18          | JOIN NAME_OB '.' . NAME_OB NAME_OB
   19          | JOIN NAME_OB '.' . NAME_OB AS NAME_OB

    NAME_OB  shift, and go to state 101


state 77

    5 select_root: join_expr_list WHERE cond_expr . end_flag
   21 cond_expr: cond_expr . AND_OP bool_pri
   23          | cond_expr . OR_OP bool_pri

    END_WHERE  shift, and go to state 40
    AND_OP     shift, and go to state 60
    OR_OP      shift, and go to state 61
    END_P      shift, and go to state 41
    ')'        shift, and go to state 42
    ';'        shift, and go to state 43

    end_flag  go to state 102


state 78

   13 join_on_expr: join_expr ON cond_expr .
   21 cond_expr: cond_expr . AND_OP bool_pri
   23          | cond_expr . OR_OP bool_pri

    AND_OP  shift, and go to state 60
    OR_OP   shift, and go to state 61

    $default  reduce using rule 13 (join_on_expr)


state 79

   26 bool_pri: '(' expr . comp expr ')'

    COMP_EQ    shift, and go to state 65
    COMP_NSEQ  shift, and go to state 66
    COMP_GE    shift, and go to state 67
    COMP_GT    shift, and go to state 68
    COMP_LE    shift, and go to state 69
    COMP_LT    shift, and go to state 70
    COMP_NE    shift, and go to state 71

    comp  go to state 103


state 80

   78 opt_where_clause: WHERE . cond_expr

    ROWID             shift, and go to state 18
    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '('               shift, and go to state 24
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    cond_expr   go to state 104
    bool_pri    go to state 33
    expr        go to state 34
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 81

   76 set_expr: set_expr ',' . bool_pri

    ROWID             shift, and go to state 18
    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '('               shift, and go to state 47
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    bool_pri    go to state 105
    expr        go to state 34
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 82

   63 insert_root: SET set_expr opt_where_clause . end_flag

    END_WHERE  shift, and go to state 40
    END_P      shift, and go to state 41
    ')'        shift, and go to state 42
    ';'        shift, and go to state 43

    end_flag  go to state 106


state 83

   64 insert_root: ON cond_expr end_flag .

    $default  reduce using rule 64 (insert_root)


state 84

   69 opt_column_list: '(' column_list ')' .

    $default  reduce using rule 69 (opt_column_list)


state 85

   71 column_list: column_list ',' . opt_column

    NAME_OB  shift, and go to state 51

    opt_column  go to state 107


state 86

   66 values_expr_lists: '(' . values_expr_list ')'

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    expr              go to state 108
    token_list        go to state 35
    token             go to state 36
    operator          go to state 37
    values_expr_list  go to state 109


state 87

   62 insert_root: opt_column_list VALUES values_expr_lists . end_flag
   67 values_expr_lists: values_expr_lists . ',' '(' values_expr_list ')'

    END_WHERE  shift, and go to state 40
    END_P      shift, and go to state 41
    ')'        shift, and go to state 42
    ';'        shift, and go to state 43
    ','        shift, and go to state 110

    end_flag  go to state 111


state 88

   29 bool_pri: ROWID COMP_EQ STR_VAL .

    $default  reduce using rule 29 (bool_pri)


state 89

   46 token: NAME_OB '.' NAME_OB .
   47      | NAME_OB '.' NAME_OB . '.' NAME_OB

    '.'  shift, and go to state 112

    $default  reduce using rule 46 (token)


state 90

   41 token_list: token_list . token
   43 func_param_list: token_list . ',' token_list
   48 token: NAME_OB '(' token_list . ')'

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    ')'               shift, and go to state 113
    ','               shift, and go to state 114
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    token     go to state 73
    operator  go to state 37


state 91

   44 func_param_list: func_param_list . ',' token_list
   49 token: NAME_OB '(' func_param_list . ')'

    ')'  shift, and go to state 115
    ','  shift, and go to state 116


state 92

   21 cond_expr: cond_expr AND_OP . bool_pri
   22          | '(' cond_expr AND_OP . bool_pri ')'

    ROWID             shift, and go to state 18
    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '('               shift, and go to state 47
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    bool_pri    go to state 117
    expr        go to state 34
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 93

   23 cond_expr: cond_expr OR_OP . bool_pri
   24          | '(' cond_expr OR_OP . bool_pri ')'

    ROWID             shift, and go to state 18
    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '('               shift, and go to state 47
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    bool_pri    go to state 118
    expr        go to state 34
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 94

   25 bool_pri: expr comp . expr
   26         | '(' expr comp . expr ')'

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    expr        go to state 119
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 95

   21 cond_expr: cond_expr AND_OP bool_pri .

    $default  reduce using rule 21 (cond_expr)


state 96

   23 cond_expr: cond_expr OR_OP bool_pri .

    $default  reduce using rule 23 (cond_expr)


state 97

   27 bool_pri: expr IN '(' . in_expr_list ')'

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    in_expr_list  go to state 120
    expr          go to state 121
    token_list    go to state 35
    token         go to state 36
    operator      go to state 37


state 98

   28 bool_pri: expr BETWEEN expr . AND_OP expr

    AND_OP  shift, and go to state 122


state 99

   25 bool_pri: expr comp expr .

    $default  reduce using rule 25 (bool_pri)


state 100

   17 join_expr: JOIN NAME_OB AS NAME_OB .

    $default  reduce using rule 17 (join_expr)


state 101

   15 join_expr: JOIN NAME_OB '.' NAME_OB .
   18          | JOIN NAME_OB '.' NAME_OB . NAME_OB
   19          | JOIN NAME_OB '.' NAME_OB . AS NAME_OB

    AS       shift, and go to state 123
    NAME_OB  shift, and go to state 124

    $default  reduce using rule 15 (join_expr)


state 102

    5 select_root: join_expr_list WHERE cond_expr end_flag .

    $default  reduce using rule 5 (select_root)


state 103

   26 bool_pri: '(' expr comp . expr ')'

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    expr        go to state 125
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 104

   21 cond_expr: cond_expr . AND_OP bool_pri
   23          | cond_expr . OR_OP bool_pri
   78 opt_where_clause: WHERE cond_expr .

    AND_OP  shift, and go to state 60
    OR_OP   shift, and go to state 61

    $default  reduce using rule 78 (opt_where_clause)


state 105

   76 set_expr: set_expr ',' bool_pri .

    $default  reduce using rule 76 (set_expr)


state 106

   63 insert_root: SET set_expr opt_where_clause end_flag .

    $default  reduce using rule 63 (insert_root)


state 107

   71 column_list: column_list ',' opt_column .

    $default  reduce using rule 71 (column_list)


state 108

   73 values_expr_list: expr .

    $default  reduce using rule 73 (values_expr_list)


state 109

   66 values_expr_lists: '(' values_expr_list . ')'
   74 values_expr_list: values_expr_list . ',' expr

    ')'  shift, and go to state 126
    ','  shift, and go to state 127


state 110

   67 values_expr_lists: values_expr_lists ',' . '(' values_expr_list ')'

    '('  shift, and go to state 128


state 111

   62 insert_root: opt_column_list VALUES values_expr_lists end_flag .

    $default  reduce using rule 62 (insert_root)


state 112

   47 token: NAME_OB '.' NAME_OB '.' . NAME_OB

    NAME_OB  shift, and go to state 129


state 113

   48 token: NAME_OB '(' token_list ')' .

    $default  reduce using rule 48 (token)


state 114

   43 func_param_list: token_list ',' . token_list

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    token_list  go to state 130
    token       go to state 36
    operator    go to state 37


state 115

   49 token: NAME_OB '(' func_param_list ')' .

    $default  reduce using rule 49 (token)


state 116

   44 func_param_list: func_param_list ',' . token_list

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    token_list  go to state 131
    token       go to state 36
    operator    go to state 37


state 117

   21 cond_expr: cond_expr AND_OP bool_pri .
   22          | '(' cond_expr AND_OP bool_pri . ')'

    ')'  shift, and go to state 132

    $default  reduce using rule 21 (cond_expr)


state 118

   23 cond_expr: cond_expr OR_OP bool_pri .
   24          | '(' cond_expr OR_OP bool_pri . ')'

    ')'  shift, and go to state 133

    $default  reduce using rule 23 (cond_expr)


state 119

   25 bool_pri: expr comp expr .
   26         | '(' expr comp expr . ')'

    ')'  shift, and go to state 134

    $default  reduce using rule 25 (bool_pri)


state 120

   27 bool_pri: expr IN '(' in_expr_list . ')'
   38 in_expr_list: in_expr_list . ',' expr

    ')'  shift, and go to state 135
    ','  shift, and go to state 136


state 121

   37 in_expr_list: expr .

    $default  reduce using rule 37 (in_expr_list)


state 122

   28 bool_pri: expr BETWEEN expr AND_OP . expr

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    expr        go to state 137
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 123

   19 join_expr: JOIN NAME_OB '.' NAME_OB AS . NAME_OB

    NAME_OB  shift, and go to state 138


state 124

   18 join_expr: JOIN NAME_OB '.' NAME_OB NAME_OB .

    $default  reduce using rule 18 (join_expr)


state 125

   26 bool_pri: '(' expr comp expr . ')'

    ')'  shift, and go to state 134


state 126

   66 values_expr_lists: '(' values_expr_list ')' .

    $default  reduce using rule 66 (values_expr_lists)


state 127

   74 values_expr_list: values_expr_list ',' . expr

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    expr        go to state 139
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 128

   67 values_expr_lists: values_expr_lists ',' '(' . values_expr_list ')'

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    expr              go to state 108
    token_list        go to state 35
    token             go to state 36
    operator          go to state 37
    values_expr_list  go to state 140


state 129

   47 token: NAME_OB '.' NAME_OB '.' NAME_OB .

    $default  reduce using rule 47 (token)


state 130

   41 token_list: token_list . token
   43 func_param_list: token_list ',' token_list .

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    $default  reduce using rule 43 (func_param_list)

    token     go to state 73
    operator  go to state 37


state 131

   41 token_list: token_list . token
   44 func_param_list: func_param_list ',' token_list .

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    $default  reduce using rule 44 (func_param_list)

    token     go to state 73
    operator  go to state 37


state 132

   22 cond_expr: '(' cond_expr AND_OP bool_pri ')' .

    $default  reduce using rule 22 (cond_expr)


state 133

   24 cond_expr: '(' cond_expr OR_OP bool_pri ')' .

    $default  reduce using rule 24 (cond_expr)


state 134

   26 bool_pri: '(' expr comp expr ')' .

    $default  reduce using rule 26 (bool_pri)


state 135

   27 bool_pri: expr IN '(' in_expr_list ')' .

    $default  reduce using rule 27 (bool_pri)


state 136

   38 in_expr_list: in_expr_list ',' . expr

    PLACE_HOLDER      shift, and go to state 19
    NAME_OB           shift, and go to state 20
    STR_VAL           shift, and go to state 21
    INT_VAL           shift, and go to state 22
    POS_PLACE_HOLDER  shift, and go to state 23
    '+'               shift, and go to state 25
    '-'               shift, and go to state 26
    '*'               shift, and go to state 27
    '/'               shift, and go to state 28
    '%'               shift, and go to state 29
    '&'               shift, and go to state 30
    '!'               shift, and go to state 31

    expr        go to state 141
    token_list  go to state 35
    token       go to state 36
    operator    go to state 37


state 137

   28 bool_pri: expr BETWEEN expr AND_OP expr .

    $default  reduce using rule 28 (bool_pri)


state 138

   19 join_expr: JOIN NAME_OB '.' NAME_OB AS NAME_OB .

    $default  reduce using rule 19 (join_expr)


state 139

   74 values_expr_list: values_expr_list ',' expr .

    $default  reduce using rule 74 (values_expr_list)


state 140

   67 values_expr_lists: values_expr_lists ',' '(' values_expr_list . ')'
   74 values_expr_list: values_expr_list . ',' expr

    ')'  shift, and go to state 142
    ','  shift, and go to state 127


state 141

   38 in_expr_list: in_expr_list ',' expr .

    $default  reduce using rule 38 (in_expr_list)


state 142

   67 values_expr_lists: values_expr_lists ',' '(' values_expr_list ')' .

    $default  reduce using rule 67 (values_expr_lists)
