Module Jenga_lib.Tenacious.Heart.Weak_glass

type t

let g,h = Weak_glass.create is analogous to let g = Glass.create () and h = watch g except it also lets you see when it's unwatched. It is a guarantee that after unwatched g becomes determined, break g will no longer have any effect (because the user has lost all references to all hearts derived from h).

val create : unit ‑> t * Heart.t

let g,h = Weak_glass.create is analogous to let g = Glass.create () and h = watch g except it also lets you see when it's unwatched. It is a guarantee that after unwatched g becomes determined, break g will no longer have any effect (because the user has lost all references to all hearts derived from h).

val unwatched : t ‑> unit Async.Deferred.t

Breaks the heart returned by create

val break : t ‑> unit

Breaks the heart returned by create