package git

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

The functor to make the OCaml representation of the Git Reference object by a specific hash.

Parameters

module Hash : sig ... end

Signature

type nonrec t = t
module P : sig ... end
val head : t
val master : t
val is_head : t -> bool
val of_string : string -> t
val to_string : t -> string
val of_path : Path.t -> t
val to_path : t -> Path.t
val pp : t Fmt.t
val compare : t -> t -> int
val hash : t -> int
val equal : t -> t -> bool
module Set : Set.S with type elt = t
module Map : Map.S with type key = t
type head_contents =
  1. | Hash of Hash.t
    (*

    A pointer to an hash.

    *)
  2. | Ref of t
    (*

    A reference which one can point to an other reference or an hash.

    *)

The type of the value of a Git reference.

val pp_head_contents : head_contents Fmt.t

Pretty-printer of head_contents.

val equal_head_contents : head_contents -> head_contents -> bool

equal_head_contents a b implies a = Ref a' and b = Ref b' and Reference.equal a' b' = true or a = Hash a' and b = Hash b' and Hash.equal a' b'.

However, semantically Ref a' could be equal to Hash b' iff Hash b' is come from the reference a'. That means this function does not handle any indirection when it tests your values.

val compare_head_contents : head_contents -> head_contents -> int
module A : sig ... end
module M : sig ... end
module D : sig ... end
module E : sig ... end