1 Star 1 Fork 0

Zeneks / calc

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
y.output 9.32 KB
一键复制 编辑 原始数据 按行查看 历史
State 7 conflicts: 2 shift/reduce
State 9 conflicts: 4 shift/reduce
State 21 conflicts: 4 shift/reduce
State 22 conflicts: 4 shift/reduce
State 23 conflicts: 4 shift/reduce
State 24 conflicts: 4 shift/reduce
Grammar
0 $accept: line_list $end
1 line_list: line
2 | line_list line
3 line: expression CR
4 expression: term
5 | expression ADD expression
6 | expression SUB expression
7 | expression MUL expression
8 | expression DIV expression
9 term: primary_expression
10 | term MUL primary_expression
11 | term DIV primary_expression
12 primary_expression: DOUBLE_LITERAL
13 | BL expression BR
14 | SUB expression
Terminals, with rules where they appear
$end (0) 0
error (256)
DOUBLE_LITERAL (258) 12
ADD (259) 5
SUB (260) 6 14
MUL (261) 7 10
DIV (262) 8 11
CR (263) 3
BL (264) 13
BR (265) 13
Nonterminals, with rules where they appear
$accept (11)
on left: 0
line_list (12)
on left: 1 2, on right: 0 2
line (13)
on left: 3, on right: 1 2
expression (14)
on left: 4 5 6 7 8, on right: 3 5 6 7 8 13 14
term (15)
on left: 9 10 11, on right: 4 10 11
primary_expression (16)
on left: 12 13 14, on right: 9 10 11
state 0
0 $accept: . line_list $end
DOUBLE_LITERAL shift, and go to state 1
SUB shift, and go to state 2
BL shift, and go to state 3
line_list go to state 4
line go to state 5
expression go to state 6
term go to state 7
primary_expression go to state 8
state 1
12 primary_expression: DOUBLE_LITERAL .
$default reduce using rule 12 (primary_expression)
state 2
14 primary_expression: SUB . expression
DOUBLE_LITERAL shift, and go to state 1
SUB shift, and go to state 2
BL shift, and go to state 3
expression go to state 9
term go to state 7
primary_expression go to state 8
state 3
13 primary_expression: BL . expression BR
DOUBLE_LITERAL shift, and go to state 1
SUB shift, and go to state 2
BL shift, and go to state 3
expression go to state 10
term go to state 7
primary_expression go to state 8
state 4
0 $accept: line_list . $end
2 line_list: line_list . line
$end shift, and go to state 11
DOUBLE_LITERAL shift, and go to state 1
SUB shift, and go to state 2
BL shift, and go to state 3
line go to state 12
expression go to state 6
term go to state 7
primary_expression go to state 8
state 5
1 line_list: line .
$default reduce using rule 1 (line_list)
state 6
3 line: expression . CR
5 expression: expression . ADD expression
6 | expression . SUB expression
7 | expression . MUL expression
8 | expression . DIV expression
ADD shift, and go to state 13
SUB shift, and go to state 14
MUL shift, and go to state 15
DIV shift, and go to state 16
CR shift, and go to state 17
state 7
4 expression: term .
10 term: term . MUL primary_expression
11 | term . DIV primary_expression
MUL shift, and go to state 18
DIV shift, and go to state 19
MUL [reduce using rule 4 (expression)]
DIV [reduce using rule 4 (expression)]
$default reduce using rule 4 (expression)
state 8
9 term: primary_expression .
$default reduce using rule 9 (term)
state 9
5 expression: expression . ADD expression
6 | expression . SUB expression
7 | expression . MUL expression
8 | expression . DIV expression
14 primary_expression: SUB expression .
ADD shift, and go to state 13
SUB shift, and go to state 14
MUL shift, and go to state 15
DIV shift, and go to state 16
ADD [reduce using rule 14 (primary_expression)]
SUB [reduce using rule 14 (primary_expression)]
MUL [reduce using rule 14 (primary_expression)]
DIV [reduce using rule 14 (primary_expression)]
$default reduce using rule 14 (primary_expression)
state 10
5 expression: expression . ADD expression
6 | expression . SUB expression
7 | expression . MUL expression
8 | expression . DIV expression
13 primary_expression: BL expression . BR
ADD shift, and go to state 13
SUB shift, and go to state 14
MUL shift, and go to state 15
DIV shift, and go to state 16
BR shift, and go to state 20
state 11
0 $accept: line_list $end .
$default accept
state 12
2 line_list: line_list line .
$default reduce using rule 2 (line_list)
state 13
5 expression: expression ADD . expression
DOUBLE_LITERAL shift, and go to state 1
SUB shift, and go to state 2
BL shift, and go to state 3
expression go to state 21
term go to state 7
primary_expression go to state 8
state 14
6 expression: expression SUB . expression
DOUBLE_LITERAL shift, and go to state 1
SUB shift, and go to state 2
BL shift, and go to state 3
expression go to state 22
term go to state 7
primary_expression go to state 8
state 15
7 expression: expression MUL . expression
DOUBLE_LITERAL shift, and go to state 1
SUB shift, and go to state 2
BL shift, and go to state 3
expression go to state 23
term go to state 7
primary_expression go to state 8
state 16
8 expression: expression DIV . expression
DOUBLE_LITERAL shift, and go to state 1
SUB shift, and go to state 2
BL shift, and go to state 3
expression go to state 24
term go to state 7
primary_expression go to state 8
state 17
3 line: expression CR .
$default reduce using rule 3 (line)
state 18
10 term: term MUL . primary_expression
DOUBLE_LITERAL shift, and go to state 1
SUB shift, and go to state 2
BL shift, and go to state 3
primary_expression go to state 25
state 19
11 term: term DIV . primary_expression
DOUBLE_LITERAL shift, and go to state 1
SUB shift, and go to state 2
BL shift, and go to state 3
primary_expression go to state 26
state 20
13 primary_expression: BL expression BR .
$default reduce using rule 13 (primary_expression)
state 21
5 expression: expression . ADD expression
5 | expression ADD expression .
6 | expression . SUB expression
7 | expression . MUL expression
8 | expression . DIV expression
ADD shift, and go to state 13
SUB shift, and go to state 14
MUL shift, and go to state 15
DIV shift, and go to state 16
ADD [reduce using rule 5 (expression)]
SUB [reduce using rule 5 (expression)]
MUL [reduce using rule 5 (expression)]
DIV [reduce using rule 5 (expression)]
$default reduce using rule 5 (expression)
state 22
5 expression: expression . ADD expression
6 | expression . SUB expression
6 | expression SUB expression .
7 | expression . MUL expression
8 | expression . DIV expression
ADD shift, and go to state 13
SUB shift, and go to state 14
MUL shift, and go to state 15
DIV shift, and go to state 16
ADD [reduce using rule 6 (expression)]
SUB [reduce using rule 6 (expression)]
MUL [reduce using rule 6 (expression)]
DIV [reduce using rule 6 (expression)]
$default reduce using rule 6 (expression)
state 23
5 expression: expression . ADD expression
6 | expression . SUB expression
7 | expression . MUL expression
7 | expression MUL expression .
8 | expression . DIV expression
ADD shift, and go to state 13
SUB shift, and go to state 14
MUL shift, and go to state 15
DIV shift, and go to state 16
ADD [reduce using rule 7 (expression)]
SUB [reduce using rule 7 (expression)]
MUL [reduce using rule 7 (expression)]
DIV [reduce using rule 7 (expression)]
$default reduce using rule 7 (expression)
state 24
5 expression: expression . ADD expression
6 | expression . SUB expression
7 | expression . MUL expression
8 | expression . DIV expression
8 | expression DIV expression .
ADD shift, and go to state 13
SUB shift, and go to state 14
MUL shift, and go to state 15
DIV shift, and go to state 16
ADD [reduce using rule 8 (expression)]
SUB [reduce using rule 8 (expression)]
MUL [reduce using rule 8 (expression)]
DIV [reduce using rule 8 (expression)]
$default reduce using rule 8 (expression)
state 25
10 term: term MUL primary_expression .
$default reduce using rule 10 (term)
state 26
11 term: term DIV primary_expression .
$default reduce using rule 11 (term)
C
1
https://gitee.com/xykong_znx/calc.git
git@gitee.com:xykong_znx/calc.git
xykong_znx
calc
calc
master

搜索帮助