sig
val general : ?cache_size_bound:int -> ('a -> 'b) -> 'a -> 'b
val unit : (unit -> 'a) -> unit -> 'a
val ounit_tests : unit -> OUnit.test
val general_rec : (('a -> 'b) -> 'a -> 'b) -> 'a -> 'b
val ounit_tests : unit -> OUnit.test
end