Module LockDomain.MustLocksetRW

include sig ... end
type elt = MustLockRW.t
val empty : unit -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ]
val is_empty : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> bool
val mem : elt -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> bool
val add : elt -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ]
val singleton : elt -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ]
val remove : elt -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ]
val union : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ]
val inter : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ]
val diff : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ]
val subset : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> bool
val disjoint : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> bool
val iter : (elt -> unit) -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> unit
val map : (elt -> elt) -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ]
val fold : (elt -> 'a -> 'a) -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> 'a -> 'a
val for_all : (elt -> bool) -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> bool
val exists : (elt -> bool) -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> bool
val filter : (elt -> bool) -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ]
val partition : (elt -> bool) -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] * [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ]
val cardinal : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> int
val elements : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> elt list
val of_list : elt list -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ]
val min_elt : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> elt
val max_elt : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> elt
val choose : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> elt
type t = [
  1. | `Lifted of SetDomain.Make(MustLockRW).t
  2. | `Top
]
val equal : t -> t -> bool
val hash : t -> int
val compare : t -> t -> int
val show : t -> string
val pretty : unit -> t -> Printable.Pretty.doc
val to_yojson : t -> Yojson.Safe.t
val tag : t -> int
val relift : t -> t
val widen : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ]
val narrow : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ]
val bot : unit -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ]
val is_bot : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> bool
val top : unit -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ]
val is_top : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> bool
val leq : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> bool
val join : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ]
val meet : [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ]
val pretty_diff : unit -> (t * t) -> Lattice.Pretty.doc
val printXml : 'a BatInnerIO.output -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] -> unit
val arbitrary : unit -> [ `Lifted of SetDomain.Make(MustLockRW).t | `Top ] QCheck.arbitrary
val name : unit -> string
val add_mval_rw : MvalRW.t -> t -> t
val remove_mval_rw : MvalRW.t -> t -> t
val mem_mval : Mval.t -> t -> bool
val remove_mval : Mval.t -> t -> t
val all : unit -> t
val is_all : t -> bool
val to_must_lockset : t -> MustLockset.t