module ID:sig
..end
An ID.t
is a unique identifier (an integer) with a human-readable name.
We use those to give names to variables that are not hashconsed (the hashconsing
does not play nice with names)
Since 1.0
type
t = private {
|
id : |
|||
|
name : |
|||
|
mutable payload : |
(* |
Use
exn as an open type for user-defined payload | *) |
val make : string -> t
val copy : t -> t
val id : t -> int
val name : t -> string
val payload : t -> exn list
val add_payload : t -> exn -> unit
include Interfaces.HASH
include Interfaces.ORD
include Interfaces.PRINT
ID.id
fieldval pp_full : t CCFormat.printer
val pp_fullc : t CCFormat.printer
val gensym : unit -> t
module Map:CCMap.S
with type key = t
module Set:CCSet.S
with type elt = t
module Tbl:CCHashtbl.S
with type key = t