Frama-C API - Make
Parameters
module X : Hptmap.Id_Datatype
Signature
include S with type elt = X.t and type 'a map = 'a Hptmap.Shape(X).map
type 'a map = 'a Hptmap.Shape(X).map
include Datatype.S_with_collections with type t = unit map
include Datatype.S with type t = unit map
include Datatype.S_no_copy with type t = unit map
val packed_descr : 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 pretty : Stdlib.Format.formatter -> t -> unit
Pretty print each value in an user-friendly way.
val mem_project : (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
.
module Set : Datatype.Set with type elt = t
module Map : Datatype.Map with type key = t
module Hashtbl : Datatype.Hashtbl with type key = t
The datatype of sets.
intersects s1 s2
returns true
if and only if s1
and s2
have an element in common
replace shape set
replaces the elements of set
according to shape
. The returned boolean indicates whether the set has been modified; it is false when the intersection between shape
and set
is empty.
Clear all the caches used internally by the functions of this module. Those caches are not project-aware, so this function must be called at least each a project switch occurs.
val pretty_debug : t Pretty_utils.formatter
val self : State.t