sig
type 'a print = Format.formatter -> 'a -> unit
type 'a pp = Buffer.t -> 'a -> unit
type 'a ord = 'a -> 'a -> int
type 'a eq = 'a -> 'a -> bool
type 'a sequence = ('a -> unit) -> unit
type 'a t = 'a Pervasives.ref
val map : ('a -> 'b) -> 'a CCRef.t -> 'b CCRef.t
val create : 'a -> 'a CCRef.t
val iter : ('a -> unit) -> 'a CCRef.t -> unit
val update : ('a -> 'a) -> 'a CCRef.t -> unit
val incr_then_get : int CCRef.t -> int
val get_then_incr : int CCRef.t -> int
val compare : 'a CCRef.ord -> 'a CCRef.t CCRef.ord
val equal : 'a CCRef.eq -> 'a CCRef.t CCRef.eq
val to_list : 'a CCRef.t -> 'a list
val to_seq : 'a CCRef.t -> 'a CCRef.sequence
val print : 'a CCRef.print -> 'a CCRef.t CCRef.print
val pp : 'a CCRef.pp -> 'a CCRef.t CCRef.pp
end