Module Symbol.QMap

type 'a t
val empty : 'a t
val add : symbol -> 'a -> 'a t -> 'a t
val find : symbol -> 'a t -> 'a
val find_opt : symbol -> 'a t -> 'a option
val union : 'a merge -> 'a t -> 'a t -> 'a t
val give_uf : 'a t -> UF.t
val unify : 'a merge -> symbol -> symbol -> 'a t -> 'a t
val mapi : (symbol -> symbol) -> ('a -> 'a) -> 'a t -> 'a t
val map : ('a -> 'b) -> 'a t -> 'b t
val fold : (symbol -> 'a -> 'b -> 'b) -> 'a t -> 'b -> 'b
val iter : (symbol -> 'a -> unit) -> 'a t -> unit
val mem : symbol -> 'a t -> bool
val bindings : 'a t -> (symbol * 'a) list
val get_uf : 'a t -> UF.t