Module Tar_mirage.Make_KV_RO

Construct a read-only key-value store from an existing block device containing tar-format data.

Parameters

module BLOCK : Mirage_block.S

Signature

include Mirage_kv.RO
type nonrec error = private [>
  1. | Mirage_kv.error
]
val pp_error : error Fmt.t
type t
val disconnect : t -> unit Lwt.t
type key = Mirage_kv.Key.t
val exists : t -> key -> ([ `Dictionary | `Value ] option, error) Stdlib.result Lwt.t
val get : t -> key -> (string, error) Stdlib.result Lwt.t
val get_partial : t -> key -> offset:Optint.Int63.t -> length:int -> (string, error) Stdlib.result Lwt.t
val list : t -> key -> ((key * [ `Dictionary | `Value ]) list, error) Stdlib.result Lwt.t
val last_modified : t -> key -> (Ptime.t, error) Stdlib.result Lwt.t
val digest : t -> key -> (string, error) Stdlib.result Lwt.t
val size : t -> key -> (Optint.Int63.t, error) Stdlib.result Lwt.t
val connect : BLOCK.t -> t Lwt.t

connect block

  • raises Invalid_argument

    if block has a sector size that is not a positive multiple of 512.