Module Misc.EnvLazy

type ('a, 'b) t
type log
val force : ('a -> 'b) -> ('a'b) t -> 'b
val create : 'a -> ('a'b) t
val get_arg : ('a'b) t -> 'a option
val create_forced : 'b -> ('a'b) t
val create_failed : exn -> ('a'b) t
val log : unit -> log
val force_logged : log -> ('a -> 'b option) -> ('a'b option) t -> 'b option
val backtrack : log -> unit