Module 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.

val sexp_of_t : ('a -> Ppx_sexp_conv_lib.Sexp.t) -> 'a t -> Ppx_sexp_conv_lib.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.