Index.Make
An abstraction on top of the index library that exposes an API that better fits the irmin-pack use case.
module K : Irmin.Hash.S
type key = K.t
type value = Optint.Int63.t * int * Irmin_pack.Pack_value.Kind.t
module Io = Io.Unix
val v_exn :
?flush_callback:(unit -> unit) ->
?fresh:bool ->
?readonly:bool ->
?throttle:[ `Block_writes | `Overcommit_memory ] ->
?lru_size:int ->
log_size:int ->
string ->
t
val v :
?flush_callback:(unit -> unit) ->
?fresh:bool ->
?readonly:bool ->
?throttle:[ `Block_writes | `Overcommit_memory ] ->
?lru_size:int ->
log_size:int ->
string ->
(t, [> create_error ]) Stdlib.result
val reload : t -> (unit, [> write_error ]) Stdlib.result
val close : t -> (unit, [> write_error ]) Stdlib.result
val close_exn : t -> unit
val flush : t -> with_fsync:bool -> (unit, [> write_error ]) Stdlib.result
val merge : t -> unit
val try_merge : t -> unit