Module Inter.Raw

include Pack_value.S with type hash = hash with type key = key
include Brassaia_eio_pack.Import.Brassaia.Type.S
include Repr.S
type t
val t : t Repr__Type.ty
type hash = hash
type key = key
val hash : t -> hash
val kind : t -> Pack_value.Kind.t

Describes the length header formats for the data sections of pack entries.

val weight : t -> Pack_value_intf.weight

weight t is the t's LRU weight.

val encode_bin : dict:(string -> int option) -> offset_of_key:(key -> Import.int63 option) -> hash -> t Brassaia_eio_pack.Import.Brassaia.Type.encode_bin
val decode_bin : dict:(int -> string option) -> key_of_offset:(Import.int63 -> key) -> key_of_hash:(hash -> key) -> t Brassaia_eio_pack.Import.Brassaia.Type.decode_bin
val decode_bin_length : string -> int -> int
val to_kinded : t -> Pack_value_intf.kinded

to_kinded t returns a kinded version of t.

val of_kinded : Pack_value_intf.kinded -> t

of_kinded k is the inverse of to_kinded t.

It is expected that an implementation only works for k that is returned from to_kinded t and will raise an exception otherwise.

val encoding : t Data_encoding.t

encoding is the data_encoding for t.

val depth : t -> int option
exception Invalid_depth of {
  1. expected : int;
  2. got : int;
  3. v : t;
}
val decode_children_offsets : entry_of_offset:(Import.int63 -> 'a) -> entry_of_hash:(hash -> 'a) -> string -> int Stdlib.ref -> 'a list