Fiber.MVar
type 'a t
val create : 'a -> 'a t
val create_empty : unit -> 'a t
val put : 'a t -> 'a -> unit
val take : 'a t -> 'a
val take_available : 'a t -> 'a option
val is_empty : 'a t -> bool