Frama-C API - NS
Sets of pairs Node.t * Zone.t
, with a special semantics for zones: add n z (add n z' empty)
results in (n, Zone.join z z')
instead of a set with two different elements. All operations see only instance of a node, with the join of all possible zones. Conversely, a node should not be present with an empty zone.
include Frama_c_kernel.Datatype.S
include Frama_c_kernel.Datatype.S_no_copy
val descr : t Frama_c_kernel.Descr.t
Datatype descriptor.
val packed_descr : Frama_c_kernel.Structural_descr.pack
Packed version of the descriptor.
val reprs : t list
List of representants of the descriptor.
val hash : t -> int
Hash function: same spec than Hashtbl.hash
.
val mem_project : (Frama_c_kernel.Project_skeleton.t -> bool) -> t -> bool
mem_project f x
must return true
iff there is a value p
of type Project.t
in x
such that f p
returns true
.
val empty : t
val is_empty : t -> bool
val pretty : t Frama_c_kernel.Pretty_utils.formatter
val remove : Pdg_types.PdgTypes.Node.t -> t -> t
val mem : Pdg_types.PdgTypes.Node.t -> t -> bool