sig type ('a, 'b) t val make : ('a -> 'b) -> ('a, 'b) Cache.t val get : ('a, 'b) Cache.t -> 'a -> 'b val size : ('a, 'b) Cache.t -> int val clear : ('a, 'b) Cache.t -> unit end