State |
|
end |
name |
float |
integer |
op_add |
op_sub |
op_mult |
op_div |
par_l |
par_r |
brace_l |
brace_r |
|
program |
expr |
expr2 |
expr3 |
expr4 |
0 |
entry |
program |
= |
expr |
end |
expr_add |
expr |
= |
expr |
op_add |
expr2 |
expr_sub |
expr |
= |
expr |
op_sub |
expr2 |
_expr_1_2 |
expr |
= |
expr2 |
expr_mult |
expr2 |
= |
expr2 |
op_mult |
expr3 |
expr_div |
expr2 |
= |
expr2 |
op_div |
expr3 |
_expr_2_3 |
expr2 |
= |
expr3 |
expr_neg |
expr3 |
= |
op_sub |
expr4 |
_expr_3_4 |
expr3 |
= |
expr4 |
_expr_par |
expr4 |
= |
par_l |
expr |
par_r |
_expr_int |
expr4 |
= |
integer |
_expr_float |
expr4 |
= |
float |
expr_func |
expr4 |
= |
name |
par_l |
expr |
par_r |
expr_var |
expr4 |
= |
name |
|
|
|
shift 1 |
shift 3 |
shift 4 |
|
shift 7 |
|
|
shift 5 |
|
|
|
|
|
goto 34 |
goto 10 |
goto 9 |
goto 6 |
1 |
expr_func |
expr4 |
= |
name |
par_l |
expr |
par_r |
expr_var |
expr4 |
= |
name |
|
|
|
reduce expr_var |
|
|
|
reduce expr_var |
reduce expr_var |
reduce expr_var |
reduce expr_var |
shift 2 |
reduce expr_var |
|
|
|
|
|
|
|
|
2 |
expr_func |
expr4 |
= |
name |
par_l |
expr |
par_r |
expr_add |
expr |
= |
expr |
op_add |
expr2 |
expr_sub |
expr |
= |
expr |
op_sub |
expr2 |
_expr_1_2 |
expr |
= |
expr2 |
expr_mult |
expr2 |
= |
expr2 |
op_mult |
expr3 |
expr_div |
expr2 |
= |
expr2 |
op_div |
expr3 |
_expr_2_3 |
expr2 |
= |
expr3 |
expr_neg |
expr3 |
= |
op_sub |
expr4 |
_expr_3_4 |
expr3 |
= |
expr4 |
_expr_par |
expr4 |
= |
par_l |
expr |
par_r |
_expr_int |
expr4 |
= |
integer |
_expr_float |
expr4 |
= |
float |
expr_func |
expr4 |
= |
name |
par_l |
expr |
par_r |
expr_var |
expr4 |
= |
name |
|
|
|
shift 1 |
shift 3 |
shift 4 |
|
shift 7 |
|
|
shift 5 |
|
|
|
|
|
goto 25 |
goto 10 |
goto 9 |
goto 6 |
3 |
_expr_float |
expr4 |
= |
float |
|
|
|
reduce _expr_float |
|
|
|
reduce _expr_float |
reduce _expr_float |
reduce _expr_float |
reduce _expr_float |
|
reduce _expr_float |
|
|
|
|
|
|
|
|
4 |
_expr_int |
expr4 |
= |
integer |
|
|
|
reduce _expr_int |
|
|
|
reduce _expr_int |
reduce _expr_int |
reduce _expr_int |
reduce _expr_int |
|
reduce _expr_int |
|
|
|
|
|
|
|
|
5 |
_expr_par |
expr4 |
= |
par_l |
expr |
par_r |
expr_add |
expr |
= |
expr |
op_add |
expr2 |
expr_sub |
expr |
= |
expr |
op_sub |
expr2 |
_expr_1_2 |
expr |
= |
expr2 |
expr_mult |
expr2 |
= |
expr2 |
op_mult |
expr3 |
expr_div |
expr2 |
= |
expr2 |
op_div |
expr3 |
_expr_2_3 |
expr2 |
= |
expr3 |
expr_neg |
expr3 |
= |
op_sub |
expr4 |
_expr_3_4 |
expr3 |
= |
expr4 |
_expr_par |
expr4 |
= |
par_l |
expr |
par_r |
_expr_int |
expr4 |
= |
integer |
_expr_float |
expr4 |
= |
float |
expr_func |
expr4 |
= |
name |
par_l |
expr |
par_r |
expr_var |
expr4 |
= |
name |
|
|
|
shift 1 |
shift 3 |
shift 4 |
|
shift 7 |
|
|
shift 5 |
|
|
|
|
|
goto 15 |
goto 10 |
goto 9 |
goto 6 |
6 |
|
|
reduce _expr_3_4 |
|
|
|
reduce _expr_3_4 |
reduce _expr_3_4 |
reduce _expr_3_4 |
reduce _expr_3_4 |
|
reduce _expr_3_4 |
|
|
|
|
|
|
|
|
7 |
expr_neg |
expr3 |
= |
op_sub |
expr4 |
_expr_par |
expr4 |
= |
par_l |
expr |
par_r |
_expr_int |
expr4 |
= |
integer |
_expr_float |
expr4 |
= |
float |
expr_func |
expr4 |
= |
name |
par_l |
expr |
par_r |
expr_var |
expr4 |
= |
name |
|
|
|
shift 1 |
shift 3 |
shift 4 |
|
|
|
|
shift 5 |
|
|
|
|
|
|
|
|
goto 8 |
8 |
expr_neg |
expr3 |
= |
op_sub |
expr4 |
|
|
|
reduce expr_neg |
|
|
|
reduce expr_neg |
reduce expr_neg |
reduce expr_neg |
reduce expr_neg |
|
reduce expr_neg |
|
|
|
|
|
|
|
|
9 |
|
|
reduce _expr_2_3 |
|
|
|
reduce _expr_2_3 |
reduce _expr_2_3 |
reduce _expr_2_3 |
reduce _expr_2_3 |
|
reduce _expr_2_3 |
|
|
|
|
|
|
|
|
10 |
_expr_1_2 |
expr |
= |
expr2 |
|
expr_mult |
expr2 |
= |
expr2 |
op_mult |
expr3 |
expr_div |
expr2 |
= |
expr2 |
op_div |
expr3 |
|
|
reduce _expr_1_2 |
|
|
|
reduce _expr_1_2 |
reduce _expr_1_2 |
shift 13 |
shift 11 |
|
reduce _expr_1_2 |
|
|
|
|
|
|
|
|
11 |
expr_div |
expr2 |
= |
expr2 |
op_div |
expr3 |
expr_neg |
expr3 |
= |
op_sub |
expr4 |
_expr_3_4 |
expr3 |
= |
expr4 |
_expr_par |
expr4 |
= |
par_l |
expr |
par_r |
_expr_int |
expr4 |
= |
integer |
_expr_float |
expr4 |
= |
float |
expr_func |
expr4 |
= |
name |
par_l |
expr |
par_r |
expr_var |
expr4 |
= |
name |
|
|
|
shift 1 |
shift 3 |
shift 4 |
|
shift 7 |
|
|
shift 5 |
|
|
|
|
|
|
|
goto 12 |
goto 6 |
12 |
expr_div |
expr2 |
= |
expr2 |
op_div |
expr3 |
|
|
|
reduce expr_div |
|
|
|
reduce expr_div |
reduce expr_div |
reduce expr_div |
reduce expr_div |
|
reduce expr_div |
|
|
|
|
|
|
|
|
13 |
expr_mult |
expr2 |
= |
expr2 |
op_mult |
expr3 |
expr_neg |
expr3 |
= |
op_sub |
expr4 |
_expr_3_4 |
expr3 |
= |
expr4 |
_expr_par |
expr4 |
= |
par_l |
expr |
par_r |
_expr_int |
expr4 |
= |
integer |
_expr_float |
expr4 |
= |
float |
expr_func |
expr4 |
= |
name |
par_l |
expr |
par_r |
expr_var |
expr4 |
= |
name |
|
|
|
shift 1 |
shift 3 |
shift 4 |
|
shift 7 |
|
|
shift 5 |
|
|
|
|
|
|
|
goto 14 |
goto 6 |
14 |
expr_mult |
expr2 |
= |
expr2 |
op_mult |
expr3 |
|
|
|
reduce expr_mult |
|
|
|
reduce expr_mult |
reduce expr_mult |
reduce expr_mult |
reduce expr_mult |
|
reduce expr_mult |
|
|
|
|
|
|
|
|
15 |
_expr_par |
expr4 |
= |
par_l |
expr |
par_r |
expr_add |
expr |
= |
expr |
op_add |
expr2 |
expr_sub |
expr |
= |
expr |
op_sub |
expr2 |
|
|
|
|
|
|
shift 18 |
shift 16 |
|
|
|
shift 20 |
|
|
|
|
|
|
|
|
16 |
expr_sub |
expr |
= |
expr |
op_sub |
expr2 |
expr_mult |
expr2 |
= |
expr2 |
op_mult |
expr3 |
expr_div |
expr2 |
= |
expr2 |
op_div |
expr3 |
_expr_2_3 |
expr2 |
= |
expr3 |
expr_neg |
expr3 |
= |
op_sub |
expr4 |
_expr_3_4 |
expr3 |
= |
expr4 |
_expr_par |
expr4 |
= |
par_l |
expr |
par_r |
_expr_int |
expr4 |
= |
integer |
_expr_float |
expr4 |
= |
float |
expr_func |
expr4 |
= |
name |
par_l |
expr |
par_r |
expr_var |
expr4 |
= |
name |
|
|
|
shift 1 |
shift 3 |
shift 4 |
|
shift 7 |
|
|
shift 5 |
|
|
|
|
|
|
goto 17 |
goto 9 |
goto 6 |
17 |
expr_sub |
expr |
= |
expr |
op_sub |
expr2 |
|
expr_mult |
expr2 |
= |
expr2 |
op_mult |
expr3 |
expr_div |
expr2 |
= |
expr2 |
op_div |
expr3 |
|
|
reduce expr_sub |
|
|
|
reduce expr_sub |
reduce expr_sub |
shift 13 |
shift 11 |
|
reduce expr_sub |
|
|
|
|
|
|
|
|
18 |
expr_add |
expr |
= |
expr |
op_add |
expr2 |
expr_mult |
expr2 |
= |
expr2 |
op_mult |
expr3 |
expr_div |
expr2 |
= |
expr2 |
op_div |
expr3 |
_expr_2_3 |
expr2 |
= |
expr3 |
expr_neg |
expr3 |
= |
op_sub |
expr4 |
_expr_3_4 |
expr3 |
= |
expr4 |
_expr_par |
expr4 |
= |
par_l |
expr |
par_r |
_expr_int |
expr4 |
= |
integer |
_expr_float |
expr4 |
= |
float |
expr_func |
expr4 |
= |
name |
par_l |
expr |
par_r |
expr_var |
expr4 |
= |
name |
|
|
|
shift 1 |
shift 3 |
shift 4 |
|
shift 7 |
|
|
shift 5 |
|
|
|
|
|
|
goto 19 |
goto 9 |
goto 6 |
19 |
expr_add |
expr |
= |
expr |
op_add |
expr2 |
|
expr_mult |
expr2 |
= |
expr2 |
op_mult |
expr3 |
expr_div |
expr2 |
= |
expr2 |
op_div |
expr3 |
|
|
reduce expr_add |
|
|
|
reduce expr_add |
reduce expr_add |
shift 13 |
shift 11 |
|
reduce expr_add |
|
|
|
|
|
|
|
|
20 |
_expr_par |
expr4 |
= |
par_l |
expr |
par_r |
|
|
|
reduce _expr_par |
|
|
|
reduce _expr_par |
reduce _expr_par |
reduce _expr_par |
reduce _expr_par |
|
reduce _expr_par |
|
|
|
|
|
|
|
|
21 |
|
|
reduce _expr_3_4 |
|
|
|
reduce _expr_3_4 |
reduce _expr_3_4 |
reduce _expr_3_4 |
reduce _expr_3_4 |
|
reduce _expr_3_4 |
|
|
|
|
|
|
|
|
22 |
expr_neg |
expr3 |
= |
op_sub |
expr4 |
_expr_par |
expr4 |
= |
par_l |
expr |
par_r |
_expr_int |
expr4 |
= |
integer |
_expr_float |
expr4 |
= |
float |
expr_func |
expr4 |
= |
name |
par_l |
expr |
par_r |
expr_var |
expr4 |
= |
name |
|
|
|
shift 1 |
shift 3 |
shift 4 |
|
|
|
|
shift 5 |
|
|
|
|
|
|
|
|
goto 8 |
23 |
|
|
reduce _expr_2_3 |
|
|
|
reduce _expr_2_3 |
reduce _expr_2_3 |
reduce _expr_2_3 |
reduce _expr_2_3 |
|
reduce _expr_2_3 |
|
|
|
|
|
|
|
|
24 |
_expr_1_2 |
expr |
= |
expr2 |
|
expr_mult |
expr2 |
= |
expr2 |
op_mult |
expr3 |
expr_div |
expr2 |
= |
expr2 |
op_div |
expr3 |
|
|
reduce _expr_1_2 |
|
|
|
reduce _expr_1_2 |
reduce _expr_1_2 |
shift 13 |
shift 11 |
|
reduce _expr_1_2 |
|
|
|
|
|
|
|
|
25 |
expr_func |
expr4 |
= |
name |
par_l |
expr |
par_r |
expr_add |
expr |
= |
expr |
op_add |
expr2 |
expr_sub |
expr |
= |
expr |
op_sub |
expr2 |
|
|
|
|
|
|
shift 18 |
shift 16 |
|
|
|
shift 26 |
|
|
|
|
|
|
|
|
26 |
expr_func |
expr4 |
= |
name |
par_l |
expr |
par_r |
|
|
|
reduce expr_func |
|
|
|
reduce expr_func |
reduce expr_func |
reduce expr_func |
reduce expr_func |
|
reduce expr_func |
|
|
|
|
|
|
|
|
27 |
_expr_float |
expr4 |
= |
float |
|
|
|
reduce _expr_float |
|
|
|
reduce _expr_float |
reduce _expr_float |
reduce _expr_float |
reduce _expr_float |
|
reduce _expr_float |
|
|
|
|
|
|
|
|
28 |
_expr_int |
expr4 |
= |
integer |
|
|
|
reduce _expr_int |
|
|
|
reduce _expr_int |
reduce _expr_int |
reduce _expr_int |
reduce _expr_int |
|
reduce _expr_int |
|
|
|
|
|
|
|
|
29 |
_expr_par |
expr4 |
= |
par_l |
expr |
par_r |
expr_add |
expr |
= |
expr |
op_add |
expr2 |
expr_sub |
expr |
= |
expr |
op_sub |
expr2 |
_expr_1_2 |
expr |
= |
expr2 |
expr_mult |
expr2 |
= |
expr2 |
op_mult |
expr3 |
expr_div |
expr2 |
= |
expr2 |
op_div |
expr3 |
_expr_2_3 |
expr2 |
= |
expr3 |
expr_neg |
expr3 |
= |
op_sub |
expr4 |
_expr_3_4 |
expr3 |
= |
expr4 |
_expr_par |
expr4 |
= |
par_l |
expr |
par_r |
_expr_int |
expr4 |
= |
integer |
_expr_float |
expr4 |
= |
float |
expr_func |
expr4 |
= |
name |
par_l |
expr |
par_r |
expr_var |
expr4 |
= |
name |
|
|
|
shift 1 |
shift 3 |
shift 4 |
|
shift 7 |
|
|
shift 5 |
|
|
|
|
|
goto 15 |
goto 10 |
goto 9 |
goto 6 |
30 |
|
|
reduce _expr_3_4 |
|
|
|
reduce _expr_3_4 |
reduce _expr_3_4 |
reduce _expr_3_4 |
reduce _expr_3_4 |
|
reduce _expr_3_4 |
|
|
|
|
|
|
|
|
31 |
expr_neg |
expr3 |
= |
op_sub |
expr4 |
_expr_par |
expr4 |
= |
par_l |
expr |
par_r |
_expr_int |
expr4 |
= |
integer |
_expr_float |
expr4 |
= |
float |
expr_func |
expr4 |
= |
name |
par_l |
expr |
par_r |
expr_var |
expr4 |
= |
name |
|
|
|
shift 1 |
shift 3 |
shift 4 |
|
|
|
|
shift 5 |
|
|
|
|
|
|
|
|
goto 8 |
32 |
|
|
reduce _expr_2_3 |
|
|
|
reduce _expr_2_3 |
reduce _expr_2_3 |
reduce _expr_2_3 |
reduce _expr_2_3 |
|
reduce _expr_2_3 |
|
|
|
|
|
|
|
|
33 |
_expr_1_2 |
expr |
= |
expr2 |
|
expr_mult |
expr2 |
= |
expr2 |
op_mult |
expr3 |
expr_div |
expr2 |
= |
expr2 |
op_div |
expr3 |
|
|
reduce _expr_1_2 |
|
|
|
reduce _expr_1_2 |
reduce _expr_1_2 |
shift 13 |
shift 11 |
|
reduce _expr_1_2 |
|
|
|
|
|
|
|
|
34 |
entry |
program |
= |
expr |
end |
expr_add |
expr |
= |
expr |
op_add |
expr2 |
expr_sub |
expr |
= |
expr |
op_sub |
expr2 |
|
|
accept
|
|
|
|
shift 18 |
shift 16 |
|
|
|
|
|
|
|
|
|
|
|
|