Module DescendantLockset.Spec

include module type of struct include Analyses.IdentityUnitContextsSpec end
include module type of struct include Analyses.IdentitySpec end
include module type of struct include Analyses.DefaultSpec end
module P = Analyses.EmptyP
type marshal = unit
val init : 'a -> unit
val finalize : unit -> unit
val vdecl : ('a, 'b, 'c, 'd) Analyses.man -> 'e -> 'a
val asm : ('a, 'b, 'c, 'd) Analyses.man -> 'a
val skip : ('a, 'b, 'c, 'd) Analyses.man -> 'a
val query : 'b -> 'a Queries.t -> 'a
val morphstate : 'a -> 'b -> 'b
val sync : ('a, 'b, 'c, 'd) Analyses.man -> 'e -> 'a
val paths_as_set : ('a, 'b, 'c, 'd) Analyses.man -> 'a list
val assign : ('a, 'b, 'c, 'd) Analyses.man -> GoblintCil.lval -> GoblintCil.exp -> 'a
val branch : ('a, 'b, 'c, 'd) Analyses.man -> GoblintCil.exp -> bool -> 'a
val body : ('a, 'b, 'c, 'd) Analyses.man -> GoblintCil.fundec -> 'a
val return : ('a, 'b, 'c, 'd) Analyses.man -> GoblintCil.exp option -> GoblintCil.fundec -> 'a
val enter : ('a, 'b, 'c, 'd) Analyses.man -> GoblintCil.lval option -> GoblintCil.fundec -> GoblintCil.exp list -> ('a * 'a) list
val combine_env : 'a -> GoblintCil.lval option -> 'b -> GoblintCil.fundec -> GoblintCil.exp list -> 'c -> 'd -> Queries.ask -> 'd
val combine_assign : ('a, 'b, 'c, 'd) Analyses.man -> GoblintCil.lval option -> 'e -> GoblintCil.fundec -> GoblintCil.exp list -> 'f -> 'g -> Queries.ask -> 'a
val special : ('a, 'b, 'c, 'd) Analyses.man -> GoblintCil.lval option -> GoblintCil.varinfo -> GoblintCil.exp list -> 'a
module C = Printable.Unit
val context : 'a -> 'b -> 'c -> unit
val startcontext : unit -> unit
module D : sig ... end

{ t_d |-> L }

module G : sig ... end

{ t_0 |-> { t_d |-> L } }

module V = Analyses.TIDV
val name : unit -> string
val startstate : 'a -> D.t
val exitstate : 'a -> D.t
val threadenter : 'a -> multiple:'b -> 'c -> 'd -> 'e -> D.t list
val threadspawn_contribute_globals : (D.t, G.t, 'a, ThreadIdDomain.Thread.t) Analyses.man -> Queries.CL.key -> TIDs.t -> unit
val threadspawn_compute_local_contribution : (D.t, 'a, 'b, 'c) Analyses.man -> 'd -> TIDs.t -> D.t
val threadspawn : (D.t, G.t, 'a, ThreadIdDomain.Thread.t) Analyses.man -> multiple:'b -> 'c -> 'd -> 'e -> ('f, 'g, 'h, 'i) Analyses.man -> D.t
val unlock : (D.t, 'a, 'b, 'c) Analyses.man -> Lockset.elt -> D.t
val unknown_unlock : (D.t, 'a, 'b, 'c) Analyses.man -> D.t
val event : (D.t, 'a, 'b, 'c) Analyses.man -> Events.t -> 'd -> D.t
module A : sig ... end