Module Tjr_lib_core.Lru_two_gen_v3
Version without delete moved to OLD 2021-03-10
Version with delete
module Map_lower : sig ... end
The unknown implementation for the lower map - just find_opt
include Map_lower
module Entry : sig ... end
Entries in the internal maps can record that an entry has been deleted, or that an entry is present in the lower map m3;
include Entry
module Cache_state : sig ... end
Cache state; internal
module Api_explicit : sig ... end
API with explicit cache state
module Map_m : sig ... end
API we implement, without explicit state; find_opt, insert, delete, trim etc
module With_explicit_cache : sig ... end
For some applications, we want very precise control of the cache, ie not to have the cache state hidden inside functions, but instead be referenced explicitly
val make : monad_ops:'t Tjr_monad.monad_ops -> m3:('k, 'v, 't) Map_lower.map_lower -> max_sz:int -> ('k, 'v, 't) Map_m.map_m
Version without explicit cache state
Common instances
val make_imperative : m3:('a, 'b, Tjr_monad.Imperative.imperative) Map_lower.map_lower -> max_sz:int -> ('a, 'b, Tjr_monad.Imperative.imperative) Map_m.map_m
val make_lw : m3:('a, 'b, Tjr_monad.With_lwt.lwt) Map_lower.map_lower -> max_sz:int -> ('a, 'b, Tjr_monad.With_lwt.lwt) Map_m.map_m
module Test : functor () sig ... end