Module Rock__Context.Key

Keys

type 'a info = string * ('a -> Sexplib0.Sexp.t)

The type for key information.

create

val create : 'a info -> 'a key

create i is a new key with information i.

info

val info : 'a key -> 'a info

info k is k's information.

Existential keys

Exisential keys allow to compare keys. This can be useful for functions like filter.

type t

The type for existential keys.

hide_type

val hide_type : 'a key -> t

hide_type k is an existential key for k.

equal

val equal : t -> t -> bool

equal k k' is true iff k and k' are the same key.

compare

val compare : t -> t -> int

compare k k' is a total order on keys compatible with equal.