sig
  val general :
    ?hashable:'Core_kernel.Std_internal.Hashtbl.Hashable.t ->
    ?cache_size_bound:int -> ('-> 'b) -> '-> 'b
  val unit : (unit -> 'a) -> unit -> 'a
  val general_rec : (('-> 'b) -> '-> 'b) -> '-> 'b
  val reentrant_unit : (unit -> 'a) -> unit -> 'a
end