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 -> tval copy : t -> tval 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.printerval pp_fullc : t CCFormat.printerval gensym : unit -> tmodule Map:CCMap.Swith type key = t
module Set:CCSet.Swith type elt = t
module Tbl:CCHashtbl.Swith type key = t