HASHKEY
signatureThe HASHKEY
signature defines an abstract key type which supports
equality, is
totally ordered, and additionally offers a pseudo-random hashing operation.
Any structure which ascribes to HASHKEY
also implicitly ascribes to both
ORDKEY
and
EQKEY
.
type t
val equal : t * t → bool
val compare : t * t → order
val hash : t → int
val toString : t → string
type t
val equal :
t * t → bool
val compare :
t * t → order
LESS
, EQUAL
, or
GREATER
as appropriate for the argument pair. This
operation is transitive. It is also consistent: compare (x, y) = EQUAL
if and only if
equal (x, y)
, and compare (x, y) = LESS
if and only if compare (y, x) = GREATER
.val hash :
t → int
val toString :
t → string