Kernel.EnumerationSourcetype ('g, 'lrc) kernel = {lrc : 'lrc Fix.Indexing.index;nto : 'g Info.nonterminal Fix.Indexing.opt Fix.Indexing.index;lookahead : 'g Info.terminal Utils.Misc.indexset;}val kernel :
'a Fix.Indexing.index ->
?goto:int ->
'b Info.terminal Utils.Misc.indexset ->
('b, 'a) kerneltype ('lrc, 'n) edge = {path : 'lrc Fix.Indexing.index list;source : 'n Fix.Indexing.index;target : 'n Fix.Indexing.index;}type ('g, 'lrc, 'a, 'n) _graph = {ker : ('n, ('g, 'lrc) kernel) Fix.Indexing.vector;fwd : ('n, ('lrc, 'n) edge list) Fix.Indexing.vector;bkd : ('n, ('lrc, 'n) edge list) Fix.Indexing.vector;entries : 'a array;}val make_graph :
'g Info.grammar ->
('g Info.lr1, 'g Redgraph.reduction_closure) Fix.Indexing.vector ->
('g, 'lrc) Automata.stacks ->
(('g, 'lrc) kernel * 'a) list ->
('g, 'lrc, 'a) graphval get_lr1_state :
'a Kernel__Info.grammar ->
('a, 'b) Automata.stacks ->
('a, 'b) kernel ->
'a Info.lr1 Fix.Indexing.indexval get_lr0_state :
'a Kernel__Info.grammar ->
('a, 'b) Automata.stacks ->
('a, 'b) kernel ->
'a Kernel__Info.lr0 Fix.Indexing.indexval get_failing :
'a Kernel__Info.grammar ->
('a, 'b) Automata.stacks ->
('a Info.lr1, 'c Redgraph.reduction_closure) Fix.Indexing.Vector.t ->
('a, 'b) kernel ->
'c Info.terminal Utils.Misc.indexsettype ('g, 'lrc, 'a, 'n) failing_sentence = {first : 'n Fix.Indexing.index;pattern : 'g Info.lr0 Fix.Indexing.index;edges : ('lrc, 'n) edge list;failing : 'g Info.terminal Utils.Misc.indexset;entry : 'a;}val make_failing_sentence :
('a, 'b, 'c, 'd) _graph ->
('e Fix.Indexing.index
* 'f Info.lr0 Fix.Indexing.index
* ('g, 'e) edge list
* 'f Info.terminal Utils.Misc.indexset) ->
('f, 'g, 'c, 'e) failing_sentenceval cover_with_maximal_patterns :
'a Kernel__Info.grammar ->
('a Info.lr1, 'a Redgraph.reduction_closure) Fix.Indexing.Vector.t ->
('a, 'b) Automata.stacks ->
('a, 'b, 'c, 'd) _graph ->
('a, 'b, 'c, 'd) failing_sentence listtype ('g, 'a) dispenser = {fallible0 : ('g Info.lr0, 'g Info.terminal Utils.Misc.indexset)
Fix.Indexing.vector;mutable next : 'a Stdlib.Seq.t;}val mark_sentence_covered :
'a Kernel__Info.grammar ->
('a, 'b) Automata.stacks ->
('a, 'b, 'c, 'd) _graph ->
('a, 'e) dispenser ->
('a, 'f, 'g, 'd) failing_sentence ->
unitval cover_all :
'g Kernel__Info.grammar ->
('g Info.lr1, 'g Redgraph.reduction_closure) Fix.Indexing.Vector.t ->
('g, 'a) Automata.stacks ->
('g, 'a, 'b, 'n) _graph ->
('g, ('g, 'a, 'b, 'n) failing_sentence) dispenser