jon.recoil.org

Module Base.HashableSource

Sourcemodule type Key__local__portable = Key

We give a name to Key__portable, even though it could normally be written as sig @@ portable include Key end. This is so of_key__portable can use it for first-class modules.

Sourcemodule type Key__local = Key

We give a name to Key__portable, even though it could normally be written as sig @@ portable include Key end. This is so of_key__portable can use it for first-class modules.

Sourcemodule type Key__portable = Key

We give a name to Key__portable, even though it could normally be written as sig @@ portable include Key end. This is so of_key__portable can use it for first-class modules.

Sourcemodule type Key = Key

We give a name to Key__portable, even though it could normally be written as sig @@ portable include Key end. This is so of_key__portable can use it for first-class modules.

Sourcetype ('a : any) t = {
  1. hash : 'a -> int;
  2. compare : 'a -> 'a -> int;
  3. sexp_of_t : 'a -> Sexplib0.Sexp.t;
}
Sourceval equal : 'a t -> 'a t -> bool @@ portable
Sourceval poly : 'a t @@ portable
Sourceval of_key : ('a : any). (module Key with type t = 'a) @ immutable -> 'a t @@ portable
Sourceval to_key : ('a : any). 'a t -> (module Key with type t = 'a) @@ portable
Sourceval hash_param : int -> int -> 'a -> int @@ portable
Sourceval hash : 'a -> int @@ portable