sig
type 'a t
val create : unit -> 'a Async_condition.t
val signal : 'a Async_condition.t -> 'a -> unit
val broadcast : 'a Async_condition.t -> 'a -> unit
val wait : 'a Async_condition.t -> 'a Deferred.t
val sexp_of_t :
('a -> Sexplib.Sexp.t) -> 'a Async_condition.t -> Sexplib.Sexp.t
val ounit_tests : unit -> OUnit.test
end