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'c) result) -> ('a('b'c) result) t -> ('b'c) result
val backtrack : log -> unit