sig
  type 'a t
  val get : 'CCLock.LockRef.t -> 'a
  val set : 'CCLock.LockRef.t -> '-> unit
  val update : 'CCLock.LockRef.t -> ('-> 'a) -> unit
end