Module Cduce_lib_js.Auto_pat

type source =
| Catch
| Const of Cduce_types.Types.const
| Stack of int
| Left
| Right
| Nil
| Recompose of int * int
type result = int * source array * int
type actions =
| AIgnore of result
| AKind of actions_kind
and actions_kind = {
basic : (Cduce_types.Types.t * result) list;
atoms : result Cduce_types.AtomSet.map;
chars : result Cduce_types.CharSet.map;
prod : result dispatch dispatch;
xml : result dispatch dispatch;
record : record option;
}
and record =
| RecLabel of Cduce_types.Ident.label * result dispatch dispatch
| RecNolabel of result option * result option
and 'a dispatch =
| Dispatch of state * 'a array
| TailCall of state
| Ignore of 'a
| Impossible
and state = {
uid : int;
arity : int array;
mutable actions : actions;
mutable fail_code : int;
mutable expected_type : string;
}
type 'a rhs =
| Match of int * 'a
| Fail