Up

Module Kind

Signature

type 'a t = 'a Types.Kind.t =
| Array_fold : ('b, 'a0) Types.Array_fold.t -> 'a0 t
| At_intervals : Types.At_intervals.t -> unit t
| Bind_lhs_change : ('c, 'd) Types.Bind.t -> unit t
| Bind_main : ('e, 'a1) Types.Bind.t -> 'a1 t
| Const of 'a
| Freeze of 'a Types.Freeze.t
| If_test_change : 'f Types.If_then_else.t -> unit t
| If_then_else of 'a Types.If_then_else.t
| Invalid
| Join_lhs_change : 'g Types.Join.t -> unit t
| Join_main of 'a Types.Join.t
| Map : ('a10 -> 'a2) * 'a10 Types.Node.t -> 'a2 t
| Snapshot of 'a Types.Snapshot.t
| Step_function of 'a Types.Step_function.t
| Uninitialized
| Unordered_array_fold : ('h, 'a3) Types.Unordered_array_fold.t -> 'a3 t
| Var of 'a Types.Var.t
| Map2 : ('a11 -> 'a20 -> 'a4) * 'a11 Types.Node.t * 'a20 Types.Node.t -> 'a4 t
| Map3 : ('a12 -> 'a21 -> 'a30 -> 'a5) * 'a12 Types.Node.t * 'a21 Types.Node.t * 'a30 Types.Node.t -> 'a5 t
| Map4 : ('a13 -> 'a22 -> 'a31 -> 'a40 -> 'a6) * 'a13 Types.Node.t * 'a22 Types.Node.t * 'a31 Types.Node.t * 'a40 Types.Node.t -> 'a6 t
| Map5 : ('a14 -> 'a23 -> 'a32 -> 'a41 -> 'a50 -> 'a7) * 'a14 Types.Node.t * 'a23 Types.Node.t * 'a32 Types.Node.t * 'a41 Types.Node.t * 'a50 Types.Node.t -> 'a7 t
| Map6 : ('a15 -> 'a24 -> 'a33 -> 'a42 -> 'a51 -> 'a60 -> 'a8) * 'a15 Types.Node.t * 'a24 Types.Node.t * 'a33 Types.Node.t * 'a42 Types.Node.t * 'a51 Types.Node.t * 'a60 Types.Node.t -> 'a8 t
| Map7 : ('a16 -> 'a25 -> 'a34 -> 'a43 -> 'a52 -> 'a61 -> 'a70 -> 'a9) * 'a16 Types.Node.t * 'a25 Types.Node.t * 'a34 Types.Node.t * 'a43 Types.Node.t * 'a52 Types.Node.t * 'a61 Types.Node.t * 'a70 Types.Node.t -> 'a9 t
| Map8 : ('a17 -> 'a26 -> 'a35 -> 'a44 -> 'a53 -> 'a62 -> 'a71 -> 'a80 -> 'a18) * 'a17 Types.Node.t * 'a26 Types.Node.t * 'a35 Types.Node.t * 'a44 Types.Node.t * 'a53 Types.Node.t * 'a62 Types.Node.t * 'a71 Types.Node.t * 'a80 Types.Node.t -> 'a18 t
| Map9 : ('a19 -> 'a27 -> 'a36 -> 'a45 -> 'a54 -> 'a63 -> 'a72 -> 'a81 -> 'a90 -> 'a28) * 'a19 Types.Node.t * 'a27 Types.Node.t * 'a36 Types.Node.t * 'a45 Types.Node.t * 'a54 Types.Node.t * 'a63 Types.Node.t * 'a72 Types.Node.t * 'a81 Types.Node.t * 'a90 Types.Node.t -> 'a28 t
val sexp_of_t : ('a -> Sexplib.Sexp.t) -> 'a t -> Sexplib.Sexp.t
val name : 'a t -> string
val max_num_children : 'a t -> int
val slow_get_child : 'a t -> index:int -> Types.Packed_node.t
val bind_rhs_child_index : int
val freeze_child_index : int
val if_branch_child_index : int
val join_rhs_child_index : int
val iteri_children : 'a t -> f:(int -> Types.Packed_node.t -> unit) -> unit