Automata.MachineSourcetype ('g, 'r) label = {filter : 'g Info.lr1 Utils.Misc.indexset;The set of lr1 states that allow this transition to be taken.
*)captures : (Regexp.Capture.t * Lrgrep_support.Register.t) list;The set of variables captured, and the register in which to store the variable, when the transition is taken.
*)clear : Lrgrep_support.Register.set;The set of registers to clear when the transition is taken.
*)moves : Lrgrep_support.Register.t Lrgrep_support.Register.map;Registers to move when taking this transition. The source register is used as a key and the target as a value.
*)priority : (('g, 'r) Spec.branch Fix.Indexing.index * priority * priority) list;Dynamic priority levels to remap. An element (c, p1, p2) means that a match of clause c at priority p1 in the source state corresponds to a match at priority p2 in the target state.
}type ('g, 'r, 'st, 'tr) t = {initial : 'st Fix.Indexing.index option;source : ('tr, 'st Fix.Indexing.index) Fix.Indexing.vector;target : ('tr, 'st Fix.Indexing.index) Fix.Indexing.vector;label : ('tr, ('g, 'r) label) Fix.Indexing.vector;unhandled : ('st, 'g Info.lr1 Utils.Misc.indexset) Fix.Indexing.vector;outgoing : ('st, 'tr Utils.Misc.indexset) Fix.Indexing.vector;accepting : ('st,
(('g, 'r) Spec.branch Fix.Indexing.index
* priority
* Lrgrep_support.Register.t Regexp.Capture.map)
list)
Fix.Indexing.vector;branches : ('st,
(('g, 'r) Spec.branch Fix.Indexing.index
* bool
* Lrgrep_support.Register.t Regexp.Capture.map)
list)
Fix.Indexing.vector;register_count : int;partial_captures : Regexp.Capture.set;}val minimize :
('g, 'r) Spec.branches ->
('g, 'r, 'dfa) DFA.t ->
('g, 'r, 'dfa) Dataflow.t ->
('g, 'r) _t