module Polid: sig
.. end
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 =
| |
Equal : ('a0, 'a0) equal |
| |
Different : ('a1, 'b0) 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
Record.Polid.fresh
.
val is_equal : 'a t -> 'b t -> bool
equal
projected to a plain bool
.