module type HashedType = sig
.. end
type
t
The type of the elements.
val equal : t -> t -> bool
The equality predicate used to compare elements.
val to_string : t -> string
val hash : t -> int
A hashing function on elements. It must be such that if two elements are
equal according to equal
, then they have identical hash values
as computed by hash
.
Examples: suitable (equal
, hash
) pairs for arbitrary element
types include
((=)
, Hashset.hash
) for comparing objects by structure, and
((==)
, Hashset.hash
) for comparing objects by addresses
(e.g. for mutable or cyclic keys).