Module Names.Constant

type t
val make : KerName.t -> KerName.t -> t

Builds a constant name from a user and a canonical kernel name.

val make1 : KerName.t -> t

Special case of make where the user name is canonical.

val make2 : ModPath.t -> Label.t -> t

Shortcut for (make1 (KerName.make2 ...))

val user : t -> KerName.t
val canonical : t -> KerName.t
val repr2 : t -> ModPath.t * Label.t

Shortcut for KerName.repr (user ...)

val modpath : t -> ModPath.t

Shortcut for KerName.modpath (user ...)

val label : t -> Label.t

Shortcut for KerName.label (user ...)

module CanOrd : sig ... end
module UserOrd : sig ... end
module SyntacticOrd : sig ... end
val equal : t -> t -> bool

Default comparison, alias for CanOrd.equal

val hash : t -> int

Hashing function

val change_label : t -> Label.t -> t

Builds a new constant name with a different label

val to_string : t -> string

Encode as a string (not to be used for user-facing messages).

val print : t -> Pp.t

Print internal representation (not to be used for user-facing messages).

val debug_to_string : t -> string

Same as to_string, but outputs extra information related to debug.

val debug_print : t -> Pp.t

Same as print, but outputs extra information related to debug.