Module B00.Store

type 'a key
type binding =
  1. | B : 'a key * 'a -> binding
type t
val create : Memo.t -> dir:B0_std.Fpath.t -> binding list -> t
val memo : t -> Memo.t
val dir : t -> B0_std.Fpath.t
val key : ?mark:string -> (t -> Memo.t -> 'a B0_std.Fut.t) -> 'a key
val get : t -> 'a key -> 'a B0_std.Fut.t
val set : t -> 'a key -> 'a -> unit