Module Incremental_kernel__Incremental.Make.Expert.Dependency

type 'a t

A t represents the edge from a child incremental to a parent expert node. A t is stateful, you cannot use the same t to link one child node to multiple parents at the same time.

include sig ... end
val sexp_of_t : ('a ‑> Base.Sexp.t) ‑> 'a t ‑> Base.Sexp.t
val create : ?⁠on_change:('a ‑> unit) ‑> 'a incremental ‑> 'a t

When calling create ?on_change child, nothing happens until the t is linked to a parent. see Node.add_dependency for documentation of on_change.

val value : 'a t ‑> 'a

value t reads the value of the child incremental. It can only be used from the callback of the Expert.Node.t that has t in its set of dependencies.