Module InferIR.Mangled

type t

Type of mangled names

val compare : t -> t -> int
val equal : t -> t -> bool

Equality for mangled names

val from_string : string -> t

Convert a string to a mangled name

val mangled : string -> string -> t

Create a mangled name from a plain and mangled string

val to_string : t -> string

Convert a mangled name to a string

val to_string_full : t -> string

Convert a full mangled name to a string

val pp : Stdlib.Format.formatter -> t -> unit

Pretty print a mangled name

val this : t
val is_this : t -> bool
val self : t
val is_self : t -> bool
val rename : f:(string -> string) -> t -> t

Maps over both the plain and the mangled components.

module Set : InferStdlib.IStd.Caml.Set.S with type Set.elt = t

Set of Mangled.

module Map : InferStdlib.IStd.Caml.Map.S with type Map.key = t

Map with Mangled as key