Module Uid.Module

type t
type info = MarkedString.info
val fresh : info -> t
val get_info : t -> info
val map_info : (info -> info) -> t -> t
val compare : t -> t -> int
val equal : t -> t -> bool
val format : Stdlib.Format.formatter -> t -> unit
val to_string : t -> string
val id : t -> int

Returns the unique ID of the identifier

val hash : t -> Hash.t

While id returns a unique ID valable for a given Uid instance within a given run of catala, this is a raw hash of the identifier string. Therefore, it may collide within a given program, but remains meaninful across separate compilations.

module Set : Stdlib.Set.S with type elt = t
module Map : Map.S with type key = t