PerMutexTidCommon.LMustMutexes / clusters of globals to which values have been published, i.e., for which the initializers need not be read *
include sig ... endtype elt = Printable.Prod(LLock)(Cluster).tval empty :
unit ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]val is_empty :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
boolval mem :
elt ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
boolval add :
elt ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]val singleton :
elt ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]val remove :
elt ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]val union :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]val inter :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]val diff :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]val subset :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
boolval disjoint :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
boolval iter :
(elt -> unit) ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
unitval map :
(elt -> elt) ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]val fold :
(elt -> 'a -> 'a) ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
'a ->
'aval for_all :
(elt -> bool) ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
boolval exists :
(elt -> bool) ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
boolval filter :
(elt -> bool) ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]val partition :
(elt -> bool) ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]
* [ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]val cardinal :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
intval elements :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
elt listval to_seq :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
elt Stdlib.Seq.tval of_list :
elt list ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]val min_elt :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
eltval max_elt :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
eltval choose :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
eltval hash : t -> intval show : t -> stringval pretty : unit -> t -> Printable.Pretty.docval to_yojson : t -> Yojson.Safe.tval tag : t -> intval widen :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]val narrow :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]val bot :
unit ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]val is_bot :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
boolval top :
unit ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]val is_top :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
boolval leq :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
boolval join :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]val meet :
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]val printXml :
'a BatInnerIO.output ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ] ->
unitval arbitrary :
unit ->
[ `Lifted of SetDomain.Make(Printable.Prod(LLock)(Cluster)).t | `Top ]
QCheck.arbitrary