Module Incremental__Scope

A module internal to Incremental. Users should see Incremental_intf.

A scope is a bind in which nodes are created. It is either top, for nodes not in a bind, or Uopt.some packed_bind for nodes created on the right-hand side of a bind.

include module type of sig ... end
type t = Incremental__Types.Scope.t =
| Top
| Bind : ('a'b) Incremental__Types.Bind.t -> t
val sexp_of_t : t -> Ppx_sexp_conv_lib.Sexp.t
include Core_kernel.Invariant.S with type t := t
type t
val invariant : t Base__.Invariant_intf.inv
val top : t
val is_top : t -> bool
val height : t -> int
val is_valid : t -> bool
val is_necessary : t -> bool
val add_node : t -> _ Incremental__.Types.Node.t -> unit