package records

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

The type of identifiers associated to type 'a.

val fresh : unit -> 'a t

Make a new, fresh identifier. This is the only way to obtain a value of type t.

type ('a, 'b) equal =
  1. | Equal : ('a, 'a) equal
  2. | Different : ('a, 'b) equal

Type constraint which is conditioned on identifier equality.

val equal : 'a t -> 'b t -> ('a, 'b) equal

Equality predicate.

val to_int : 'a t -> int

Convert an identifier to an integer. The integer is guaranteed to be unique for each call to fresh.

val is_equal : 'a t -> 'b t -> bool

equal projected to a plain bool.