Module Support.Hash

Hashable types.

module type HASH = sig ... end

Module type for hashable types.

module Make (T : sig ... end) : HASH with type t = T.t
val contramap : (module HASH with type t = 's) -> ('t -> 's) -> (module HASH with type t = 't)

If val f : 't -> 's, then contramap hash f is an instance of HASH for values of type 't by the HASH instance hash for values of type 's.