Module Kv_hash.Values_file

A file containing a collection of "values" (the values stored in the int->int map are the offsets of the real values within the values file).

NOTE since fds are inherited, this is not safe to use in a multiprocess environment - the use of seek for read_value causes problems; use reload in the child process instead

module type S = sig ... end
module Make_1 : sig ... end
module Make_2 : S
include Make_2
type t
val append_value : t -> string -> int
val read_value : t -> off:int -> string
val create : fn:string -> t
val open_ : fn:string -> t
val flush : t -> unit
val close : t -> unit
val reload : t -> unit

close all existing channels and reopen; this is used for child processes to avoid concurrency issues arising from file offsets and seeking

val list_values : t -> (string * int) list
val list_values_seq : t -> (string * int) Stdlib.Seq.t