Parameter Make.1-Incr
val sexp_of_state_witness : state_witness -> Ppx_sexp_conv_lib.Sexp.t
include Incremental.S_gen with type 'a t = ('a, state_witness) Incremental.incremental with type Before_or_after.t = Incremental.Before_or_after.t with type Clock.t = state_witness Incremental.Clock.t with type 'a Cutoff.t = 'a Incremental.Cutoff.t with type 'a Expert.Dependency.t = ('a, state_witness) Incremental.Expert.Dependency.t with type 'a Expert.Node.t = ('a, state_witness) Incremental.Expert.Node.t with type 'a Observer.t = ('a, state_witness) Incremental.Observer.t with type 'a Observer.Update.t = 'a Incremental.Observer.Update.t with type Packed.t = Incremental.Packed.t with type Scope.t = state_witness Incremental.Scope.t with type State.t = state_witness Incremental.State.t with type State.Stats.t = Incremental.State.Stats.t with type ('a, 'b) Unordered_array_fold_update.t = ('a, 'b) Incremental.Unordered_array_fold_update.t with type 'a Update.t = 'a Incremental.Update.t with type 'a Var.t = ('a, state_witness) Incremental.Var.t
module State : sig ... end with type t = state_witness Incremental.State.t and type Stats.t = Incremental.State.Stats.ttype 'a t= ('a, state_witness) Incremental.incremental
val sexp_of_t : ('a -> Ppx_sexp_conv_lib.Sexp.t) -> 'a t -> Ppx_sexp_conv_lib.Sexp.t
type 'a incremental:= 'a t
include Core_kernel.Invariant.S1 with type 'a t := 'a t
val invariant : 'a Base__.Invariant_intf.inv -> 'a t Base__.Invariant_intf.inv
val is_const : _ t -> boolval is_valid : _ t -> boolval is_necessary : _ t -> boolval const : 'a -> 'a tval return : 'a -> 'a tval map : 'a t -> f:('a -> 'b) -> 'b tval (>>|) : 'a t -> ('a -> 'b) -> 'b tval map2 : 'a1 t -> 'a2 t -> f:('a1 -> 'a2 -> 'b) -> 'b tval map3 : 'a1 t -> 'a2 t -> 'a3 t -> f:('a1 -> 'a2 -> 'a3 -> 'b) -> 'b tval map4 : 'a1 t -> 'a2 t -> 'a3 t -> 'a4 t -> f:('a1 -> 'a2 -> 'a3 -> 'a4 -> 'b) -> 'b tval map5 : 'a1 t -> 'a2 t -> 'a3 t -> 'a4 t -> 'a5 t -> f:('a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'b) -> 'b tval map6 : 'a1 t -> 'a2 t -> 'a3 t -> 'a4 t -> 'a5 t -> 'a6 t -> f:('a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'b) -> 'b tval map7 : 'a1 t -> 'a2 t -> 'a3 t -> 'a4 t -> 'a5 t -> 'a6 t -> 'a7 t -> f:('a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'b) -> 'b tval map8 : 'a1 t -> 'a2 t -> 'a3 t -> 'a4 t -> 'a5 t -> 'a6 t -> 'a7 t -> 'a8 t -> f:('a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'b) -> 'b tval map9 : 'a1 t -> 'a2 t -> 'a3 t -> 'a4 t -> 'a5 t -> 'a6 t -> 'a7 t -> 'a8 t -> 'a9 t -> f:('a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'a9 -> 'b) -> 'b tval map10 : 'a1 t -> 'a2 t -> 'a3 t -> 'a4 t -> 'a5 t -> 'a6 t -> 'a7 t -> 'a8 t -> 'a9 t -> 'a10 t -> f:('a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'a9 -> 'a10 -> 'b) -> 'b tval map11 : 'a1 t -> 'a2 t -> 'a3 t -> 'a4 t -> 'a5 t -> 'a6 t -> 'a7 t -> 'a8 t -> 'a9 t -> 'a10 t -> 'a11 t -> f:('a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'a9 -> 'a10 -> 'a11 -> 'b) -> 'b tval map12 : 'a1 t -> 'a2 t -> 'a3 t -> 'a4 t -> 'a5 t -> 'a6 t -> 'a7 t -> 'a8 t -> 'a9 t -> 'a10 t -> 'a11 t -> 'a12 t -> f:('a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'a9 -> 'a10 -> 'a11 -> 'a12 -> 'b) -> 'b tval map13 : 'a1 t -> 'a2 t -> 'a3 t -> 'a4 t -> 'a5 t -> 'a6 t -> 'a7 t -> 'a8 t -> 'a9 t -> 'a10 t -> 'a11 t -> 'a12 t -> 'a13 t -> f:('a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'a9 -> 'a10 -> 'a11 -> 'a12 -> 'a13 -> 'b) -> 'b tval map14 : 'a1 t -> 'a2 t -> 'a3 t -> 'a4 t -> 'a5 t -> 'a6 t -> 'a7 t -> 'a8 t -> 'a9 t -> 'a10 t -> 'a11 t -> 'a12 t -> 'a13 t -> 'a14 t -> f:('a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'a9 -> 'a10 -> 'a11 -> 'a12 -> 'a13 -> 'a14 -> 'b) -> 'b tval map15 : 'a1 t -> 'a2 t -> 'a3 t -> 'a4 t -> 'a5 t -> 'a6 t -> 'a7 t -> 'a8 t -> 'a9 t -> 'a10 t -> 'a11 t -> 'a12 t -> 'a13 t -> 'a14 t -> 'a15 t -> f:('a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'a9 -> 'a10 -> 'a11 -> 'a12 -> 'a13 -> 'a14 -> 'a15 -> 'b) -> 'b tval bind : 'a t -> f:('a -> 'b t) -> 'b tval (>>=) : 'a t -> ('a -> 'b t) -> 'b tval bind2 : 'a1 t -> 'a2 t -> f:('a1 -> 'a2 -> 'b t) -> 'b tval bind3 : 'a1 t -> 'a2 t -> 'a3 t -> f:('a1 -> 'a2 -> 'a3 -> 'b t) -> 'b tval bind4 : 'a1 t -> 'a2 t -> 'a3 t -> 'a4 t -> f:('a1 -> 'a2 -> 'a3 -> 'a4 -> 'b t) -> 'b t
module Infix : sig ... endval join : 'a t t -> 'a tval if_ : bool t -> then_:'a t -> else_:'a t -> 'a tval freeze : ?when_:('a -> bool) -> 'a t -> 'a tval depend_on : 'a t -> depend_on:_ t -> 'a tval necessary_if_alive : 'a t -> 'a tval for_all : bool t array -> bool tval exists : bool t array -> bool tval all : 'a t list -> 'a list tval both : 'a t -> 'b t -> ('a * 'b) tval array_fold : 'a t array -> init:'b -> f:('b -> 'a -> 'b) -> 'b tval reduce_balanced : 'a t array -> f:('a -> 'b) -> reduce:('b -> 'b -> 'b) -> 'b t option
module Unordered_array_fold_update : sig ... end with type ('a, 'b) t = ('a, 'b) Incremental.Unordered_array_fold_update.tval unordered_array_fold : ?full_compute_every_n_changes:int -> 'a t array -> init:'b -> f:('b -> 'a -> 'b) -> update:('a, 'b) Unordered_array_fold_update.t -> 'b tval opt_unordered_array_fold : ?full_compute_every_n_changes:int -> 'a option t array -> init:'b -> f:('b -> 'a -> 'b) -> f_inverse:('b -> 'a -> 'b) -> 'b option tval sum : ?full_compute_every_n_changes:int -> 'a t array -> zero:'a -> add:('a -> 'a -> 'a) -> sub:('a -> 'a -> 'a) -> 'a tval opt_sum : ?full_compute_every_n_changes:int -> 'a option t array -> zero:'a -> add:('a -> 'a -> 'a) -> sub:('a -> 'a -> 'a) -> 'a option tval sum_int : int t array -> int tval sum_float : float t array -> float t
module Scope : sig ... end with type t = state_witness Incremental.Scope.tmodule Var : sig ... end with type 'a t = ('a, state_witness) Incremental.Var.tmodule Observer : sig ... end with type 'a t = ('a, state_witness) Incremental.Observer.t and type 'a Update.t = 'a Incremental.Observer.Update.tval observe : ?should_finalize:bool -> 'a t -> 'a Observer.t
module Update : sig ... end with type 'a t = 'a Incremental.Update.tval on_update : 'a t -> f:('a Update.t -> unit) -> unitval stabilize : unit -> unitval am_stabilizing : unit -> bool
module Cutoff : sig ... end with type 'a t = 'a Incremental.Cutoff.tval set_cutoff : 'a t -> 'a Cutoff.t -> unitval get_cutoff : 'a t -> 'a Cutoff.tval lazy_from_fun : (unit -> 'a) -> 'a Core_kernel.Lazy.tval default_hash_table_initial_size : intval memoize_fun : ?initial_size:int -> 'a Base.Hashtbl.Key.t -> ('a -> 'b) -> ('a -> 'b) Core_kernel.Staged.tval memoize_fun_by_key : ?initial_size:int -> 'key Base.Hashtbl.Key.t -> ('a -> 'key) -> ('a -> 'b) -> ('a -> 'b) Core_kernel.Staged.tval weak_memoize_fun : ?initial_size:int -> 'a Base.Hashtbl.Key.t -> ('a -> 'b Core_kernel.Heap_block.t) -> ('a -> 'b Core_kernel.Heap_block.t) Core_kernel.Staged.tval weak_memoize_fun_by_key : ?initial_size:int -> 'key Base.Hashtbl.Key.t -> ('a -> 'key) -> ('a -> 'b Core_kernel.Heap_block.t) -> ('a -> 'b Core_kernel.Heap_block.t) Core_kernel.Staged.tval user_info : _ t -> Core_kernel.Info.t optionval set_user_info : _ t -> Core_kernel.Info.t option -> unit
module Packed : sig ... end with type t = Incremental.Packed.tmodule Let_syntax : sig ... endmodule Before_or_after : sig ... end with type t = Incremental.Before_or_after.tmodule Step_function = Incremental__.Import.Step_functionmodule Clock : sig ... end with type t = state_witness Incremental.Clock.tmodule Expert : sig ... end with type 'a Dependency.t = ('a, state_witness) Incremental.Expert.Dependency.t and type 'a Node.t = ('a, state_witness) Incremental.Expert.Node.t