Module type Hashtbl.HashedType


module type HashedType = sig .. end
Hashtbl.Make ファンクタに対する入力のシグネチャ。

type t 
ハッシュテーブルのキーの型。
val equal : t -> t -> bool
キーを比較するのに使われる等価性述語。
val hash : t -> int
キーに対するハッシュ関数です。 equal に関して等しいキーは hash で計算されるハッシュ値が同一でなければなりません。 任意のキーの型に対して (equal, hash) として適切な値の組としては、例えば、オブジェクトを構造で比較する場合には ((=), Hashtbl.hash) があり、 nan を正しく扱い、オブジェクト同士を構造で比較する場合には ((fun x y -> compare x y = 0), Hashtbl.hash) があり、オブジェクトをアドレスで比較する場合(循環構造のあるキーを扱いたい場合)には ((==), Hashtbl.hash) 等があります。