Module Core_extended.Cache.Lru

Least recently used caching

type ('k, 'v) t
type ('a, 'b) memo = ('a, ('b, exn) Core.Result.tt
val find : ('k'vt ‑> 'k ‑> 'v option
val add : ('k'vt ‑> key:'k ‑> data:'v ‑> unit
val remove : ('k_t ‑> 'k ‑> unit
val clear : (__t ‑> unit
val create : destruct:('v ‑> unit) option ‑> int ‑> ('k'vt
val call_with_cache : cache:('a'bmemo ‑> ('a ‑> 'b) ‑> 'a ‑> 'b
val memoize : ?⁠destruct:('b ‑> unit) ‑> ('a ‑> 'b) ‑> int ‑> ('a'bmemo * ('a ‑> 'b)