This grammar is LALR(1)
Number of Rules 19
Number of Terminals 8
Number of Lr0 States9
Number of La States0
Accept ::= structures
structures ::= structure*
structure ::= table
structure ::= text
structure ::= title
7: table ::= tableTitle? start line+ end
12: line ::= ('\|' cell?)+ '[\r\n]+'
start = '(\[[^\n]*[\r\n]+)?\|[=]+[\r\n]+'
tableTitle = '\.[^\n]*[\r\n]+'
structure*->. (2)
structures Goto 2
structure* Goto 3
tableTitle Reduce 2
Eof Reduce 2
Accept->structures . (0)
Accept->structures . (0)
Eof Reduce 0
structure*->structure* .structure
tableTitle?->. (9)
tableTitle Sh/Rd 8
tableTitle? Goto 4
Eof Reduce 1
table->tableTitle? .start line+ end
table->tableTitle? start .line+ end
'|' Shift 7
('\|' cell?) Gt/Rd 14
('\|' cell?)+ Goto 9
table->tableTitle? start line+ .end
'|' Shift 7
('\|' cell?)+ Goto 9
('\|' cell?) Gt/Rd 14
('\|' cell?)->'|' .cell?
'[\r\n]+' Reduce 17
'|' Reduce 17
'[\r\n]+' Sh/Rd 13
line->('\|' cell?)+ .'[\r\n]+'
('\|' cell?)+->('\|' cell?)+ .('\|' cell?)
'[\r\n]+' Sh/Rd 12
'|' Shift 7
('\|' cell?) Gt/Rd 15
structure ==>> { tableTitle start text title}
('\|' cell?) ==>> { '\|'}
tableTitle? ==>> { tableTitle Empty}
table ==>> { tableTitle start}
('\|' cell?)+ ==>> { '\|'}
structure* ==>> { Empty tableTitle start text title}
structures ==>> { tableTitle start text title Empty}
Accept ==>> { tableTitle start text title Eof}
cell? ==>> {}
structure ==>> { tableTitle¿ table}
('\|' cell?) ==>> {}
line+ ==>> { ?{'\|',cell¿}? ?{'\|',cell¿} line}
line ==>> { ?{'\|',cell¿} ?{'\|',cell¿}?}
tableTitle? ==>> {}
table ==>> { tableTitle¿}
('\|' cell?)+ ==>> { ?{'\|',cell¿}}
structure* ==>> {}
structures ==>> { structure?}
Accept ==>> { structure? structures}
cell? ==>> true
structure ==>> false
('\|' cell?) ==>> false
line+ ==>> false
line ==>> false
tableTitle? ==>> true
table ==>> false
('\|' cell?)+ ==>> false
structure* ==>> true
structures ==>> true
Accept ==>> false