package irmin-pack
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=92a9de7a0a2a35c2feba0c35a806b1f0df24c1c0d15164eebf3f919296d26715
sha512=0203ec5117a851ad5afeb2f9091659b4e142e231b6b945caab93f4d7beb23397c8ac43f7056e91d18f4bff0be1062f6ae966d221f877c229328c0cbbf29fd9f0
doc/irmin-pack.unix/Irmin_pack_unix/Pack_store/Make/argument-1-Fm/Index/index.html
Module Fm.Index
An abstraction on top of the index library that exposes an API that better fits the irmin-pack use case.
type value = Optint.Int63.t * int * Irmin_pack.Pack_value.Kind.t
include Index.S with type value := value and type t := t and type key := key
val empty_cache : unit -> cache
Construct a new empty cache of index instances.
val clear : t -> unit
clear t
clears t
so that there are no more bindings in it.
replace t k v
binds k
to v
in t
, replacing any existing binding of k
.
If overcommit
is true, the operation does not triger a merge, even if the caches are full. By default overcommit
is false.
val sync : t -> unit
sync t
syncs a read-only index with the files on disk. Raises RW_not_allowed
if called by a read-write index.
val is_merging : t -> bool
is_merging t
returns true if t
is running a merge. Raises RO_not_allowed
if called by a read-only index.
module Checks : sig ... end
Offline fsck
-like utility for checking the integrity of Index stores built using this module.
Low level IO abstraction. A typical implementation is unix. This abstraction is meant to be dead simple. Not a lot of documentation is required.
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 ]) result
val reload : t -> (unit, [> write_error ]) result
val close : t -> (unit, [> write_error ]) result
val close_exn : t -> unit
val flush : t -> with_fsync:bool -> (unit, [> write_error ]) result
val merge : t -> unit
val try_merge : t -> unit
module Stats = Index.Stats
module Key : Index.Key.S with type t = key