Up
module
Lr0
:
sig
#
type
node = int
#
val
n : int
#
val
entry :
node
Grammar
.
ProductionMap
.t
#
val
items :
node
->
Item
.
Set
.t
#
type
lr1state
#
type
concretelr1state =
Grammar
.
TerminalSet
.t
Item
.
Map
.t
#
val
export :
lr1state
->
concretelr1state
#
val
closure :
concretelr1state
->
concretelr1state
#
val
core :
lr1state
->
node
#
val
start :
node
->
lr1state
#
val
transitions :
lr1state
->
lr1state
Grammar
.
SymbolMap
.
t
#
val
outgoing_symbols :
node
->
Grammar
.
Symbol
.
t
list
#
val
transition :
Grammar
.
Symbol
.
t
->
lr1state
->
lr1state
#
val
reductions :
lr1state
->
(
Grammar
.
TerminalSet
.t *
Grammar
.
Production
.
index
) list
#
val
equal :
lr1state
->
lr1state
->
bool
#
val
subsume :
lr1state
->
lr1state
->
bool
#
val
compatible :
lr1state
->
lr1state
->
bool
#
val
eos_compatible :
lr1state
->
lr1state
->
bool
#
val
error_compatible :
lr1state
->
lr1state
->
bool
#
val
union :
lr1state
->
lr1state
->
lr1state
#
val
restrict :
Grammar
.
TerminalSet
.t
->
lr1state
->
lr1state
#
val
print_concrete :
concretelr1state
->
string
#
val
print :
lr1state
->
string
#
val
print_closure :
lr1state
->
string
end