package index

  1. Overview
  2. Docs

Raw wraps a file-descriptor with an file-format used internally by Index. The format contains the following header fields:

  • offset: a 64-bit integer, denoting the length of the file containing valid data;
  • version: an 8-byte version string;
  • generation: a 64-bit integer denoting the generation number;
  • fan: a 64-bit length field, followed by a string containing that many bytes.
type t

The type of raw file handles.

val v : Unix.file_descr -> t

Construct a raw value from a file descriptor.

val unsafe_write : t -> off:Optint.Int63.t -> string -> int -> int -> unit
val unsafe_read : t -> off:Optint.Int63.t -> len:int -> bytes -> int
val fsync : t -> unit
val close : t -> unit
val fstat : t -> Unix.stats
exception Not_written
module Version : sig ... end
module Offset : sig ... end
module Generation : sig ... end
module Fan : sig ... end
module Header : sig ... end
module Header_prefix : sig ... end

Functions for interacting with the header format without the generation number, provided for use in irmin-pack.