Module Component.Delayed

Delayed is a bit like Lazy.t but may in the future offer the chance to peek inside to be able to optimize the calculation

val eager : bool ref

If eager is true then no delaying is done. Most useful for testing and documentation

type 'a t = {
mutable v : 'a option;
mutable get : (unit -> 'a) option;
}
val get : 'a t -> 'a
val put : (unit -> 'a) -> 'a t
val put_val : 'a -> 'a t