## table of contents

- bullseye 4.11.1-4
- testing 4.11.1-5
- unstable 4.11.1-5
- experimental 4.13.1-2

MoreLabels.Hashtbl.HashedType(3o) | OCaml library | MoreLabels.Hashtbl.HashedType(3o) |

# NAME¶

MoreLabels.Hashtbl.HashedType - The input signature of the functor MoreLabels.Hashtbl.Make.

# Module type¶

Module type MoreLabels.Hashtbl.HashedType

# Documentation¶

Module type **HashedType**

= **sig end**

The input signature of the functor **MoreLabels.Hashtbl.Make**
.

*type t*

The type of the hashtable keys.

*val equal* : **t -> t -> bool**

The equality predicate used to compare keys.

*val hash* : **t -> int**

A hashing function on keys. It must be such that if two keys are
equal according to **equal** , then they have identical hash values as
computed by **hash** . Examples: suitable ( **equal** , **hash** )
pairs for arbitrary key types include

- ( **(=)** , **MoreLabels.Hashtbl.HashedType.hash** ) for
comparing objects by structure (provided objects do not contain floats)

- ( **(fun x y -> compare x y = 0)** ,
**MoreLabels.Hashtbl.HashedType.hash** ) for comparing objects by
structure and handling **nan** correctly

- ( **(==)** , **MoreLabels.Hashtbl.HashedType.hash** ) for
comparing objects by physical equality (e.g. for mutable or cyclic
objects).

2021-12-22 | OCamldoc |