Module Incremental_kernel__.Incremental.Make.State

State

Each call to Incremental.Make creates shared state used by all the incremental functions.

type t
include sig ... end
val sexp_of_t : t ‑> Sexplib.Sexp.t

invariant checks invariants of all necessary nodes, as well as other data structures used for stabilization.

include Core_kernel.Invariant.S with type t := t
type t
val t : t

t is the shared state for this call to Incremental.Make.

val max_height_allowed : t ‑> int
val set_max_height_allowed : t ‑> int ‑> unit

set_max_height_allowed t height sets the maximum allowed height of nodes. set_max_height_allowed raises if called during stabilization, or if height < max_height_seen t.

val num_active_observers : t ‑> int

num_active_observers returns (in constant time) the number of observers that have been created and not yet disallowed (either explicitly or via finalization).

val max_height_seen : t ‑> int

constant-time stats.

val num_nodes_became_necessary : t ‑> int
val num_nodes_became_unnecessary : t ‑> int
val num_nodes_changed : t ‑> int
val num_nodes_created : t ‑> int
val num_nodes_invalidated : t ‑> int
val num_nodes_recomputed : t ‑> int
val num_nodes_recomputed_directly_because_one_child : t ‑> int
val num_nodes_recomputed_directly_because_min_height : t ‑> int
val num_stabilizes : t ‑> int
val num_var_sets : t ‑> int
val timing_wheel_length : t ‑> int
module Stats : sig ... end

Stats contains information about the DAG intended for human consumption.

val stats : t ‑> Stats.t