Parser Table

Grammar

start ::= expr all
+root+0 ::= start __eof__ all
expr ::= value all
| expr plus expr all
| expr minus expr all
| expr star expr all
| lpar expr rpar all

Non Terminals

Non terminalEpsilonFirstResultFollowResult
startfalse
First(expr)
value
lpar
__eof__
__eof__
+root+0false
First(start)
value
lpar
exprfalse
value
lpar
value
lpar
Follow(start)
rpar
star
plus
minus
rpar
star
plus
__eof__
minus

Start States

Non terminalStart State
startstate0

States

state0 (state 0:)

Compatible versions : DEFAULT

Kernel itemsActions Gotoes
+root+0 ::= • start __eof__
value: shift to state1
lpar: shift to state2
start:state11
expr:state13

state1 (state 0: value)

Compatible versions : DEFAULT

Kernel itemsActions
expr ::= value •
rpar: reduce by expr ::= 'value'
star: reduce by expr ::= 'value'
plus: reduce by expr ::= 'value'
__eof__: reduce by expr ::= 'value'
minus: reduce by expr ::= 'value'
branch: reduce by expr ::= 'value'

state2 (state 0: lpar)

Compatible versions : DEFAULT

Kernel itemsActions Gotoes
expr ::= lpar • expr rpar
value: shift to state1
lpar: shift to state2
expr:state3

state3 (state 0: lpar value)

Compatible versions : DEFAULT

Kernel itemsActions
expr ::= lpar expr • rpar
expr ::= expr • plus expr
expr ::= expr • star expr
expr ::= expr • minus expr
rpar: shift to state4
star: shift to state5
plus: shift to state7
minus: shift to state9

state4 (state 0: lpar value rpar)

Compatible versions : DEFAULT

Kernel itemsActions
expr ::= lpar expr rpar •
rpar: reduce by expr ::= 'lpar' expr 'rpar'
star: reduce by expr ::= 'lpar' expr 'rpar'
plus: reduce by expr ::= 'lpar' expr 'rpar'
__eof__: reduce by expr ::= 'lpar' expr 'rpar'
minus: reduce by expr ::= 'lpar' expr 'rpar'
branch: reduce by expr ::= 'lpar' expr 'rpar'

state5 (state 0: value star)

Compatible versions : DEFAULT

Kernel itemsActions Gotoes
expr ::= expr star • expr
value: shift to state1
lpar: shift to state2
expr:state6

state6 (state 0: value star value)

Compatible versions : DEFAULT

Kernel itemsActions
expr ::= expr star expr •
expr ::= expr • plus expr
expr ::= expr • star expr
expr ::= expr • minus expr
rpar: reduce by expr ::= expr 'star' expr
star: reduce by expr ::= expr 'star' expr,shift to state5
plus: reduce by expr ::= expr 'star' expr,shift to state7
__eof__: reduce by expr ::= expr 'star' expr
minus: reduce by expr ::= expr 'star' expr,shift to state9
branch: reduce by expr ::= expr 'star' expr

state7 (state 0: value plus)

Compatible versions : DEFAULT

Kernel itemsActions Gotoes
expr ::= expr plus • expr
value: shift to state1
lpar: shift to state2
expr:state8

state8 (state 0: value plus value)

Compatible versions : DEFAULT

Kernel itemsActions
expr ::= expr • plus expr
expr ::= expr plus expr •
expr ::= expr • star expr
expr ::= expr • minus expr
rpar: reduce by expr ::= expr 'plus' expr
star: reduce by expr ::= expr 'plus' expr,shift to state5
plus: shift to state7,reduce by expr ::= expr 'plus' expr
__eof__: reduce by expr ::= expr 'plus' expr
minus: reduce by expr ::= expr 'plus' expr,shift to state9
branch: reduce by expr ::= expr 'plus' expr

state9 (state 0: value minus)

Compatible versions : DEFAULT

Kernel itemsActions Gotoes
expr ::= expr minus • expr
value: shift to state1
lpar: shift to state2
expr:state10

state10 (state 0: value minus value)

Compatible versions : DEFAULT

Kernel itemsActions
expr ::= expr • plus expr
expr ::= expr • star expr
expr ::= expr minus expr •
expr ::= expr • minus expr
rpar: reduce by expr ::= expr 'minus' expr
star: reduce by expr ::= expr 'minus' expr,shift to state5
plus: reduce by expr ::= expr 'minus' expr,shift to state7
__eof__: reduce by expr ::= expr 'minus' expr
minus: reduce by expr ::= expr 'minus' expr,shift to state9
branch: reduce by expr ::= expr 'minus' expr

state11 (state 0: value)

Compatible versions : DEFAULT

Kernel itemsActions
+root+0 ::= start • __eof__
__eof__: accept
branch: exit exit

state12 (state 0: value __eof__)

Compatible versions : DEFAULT

Kernel itemsActions
+root+0 ::= start __eof__ •
__eof__: accept
branch: exit exit

state13 (state 0: value)

Compatible versions : DEFAULT

Kernel itemsActions
expr ::= expr • plus expr
expr ::= expr • star expr
expr ::= expr • minus expr
start ::= expr •
star: shift to state5
plus: shift to state7
__eof__: reduce by start ::= expr
minus: shift to state9
branch: reduce by start ::= expr

Valid XHTML 1.1