Module Identifier.Make

Parameters

Signature

val counter : int Stdlib.ref
val tag_table : int HT.t Stdlib.ref
val index_table : int HT.t Stdlib.ref
val add_tag : HT.key -> int -> unit
val update_index : HT.key -> int -> unit
val find_tag : HT.key -> int
val find_index : HT.key -> int
val debug_repr : unit -> string
type nonrec t = t
val next_id : unit -> int
val mk : HT.key -> int * HT.key
val mk_fresh : string -> int * string
val show : Self.t -> string
val show_debug : (int * string) -> string
val tag : ('a * 'b) -> 'a
val compare : (int * 'a) -> (int * 'b) -> int
val equal : (int * 'a) -> (int * 'b) -> bool
val base_name : ('a * string) -> string