Frama-C API - Domain
include Simpler_domains.Minimal
Lattice structure.
val top : tval widen : Frama_c_kernel.Cil_types.kernel_function -> Frama_c_kernel.Cil_types.stmt -> t -> t -> tTransfer functions.
val assign : pos:Position.t -> Eval.lval -> Eval.exp -> t -> t Eval.or_bottomval assume : pos:Position.t -> Eval.exp -> bool -> t -> t Eval.or_bottomval start_call : pos:Position.local -> Simpler_domains.simple_call -> t -> tval finalize_call : pos:Position.local -> Simpler_domains.simple_call -> pre:t -> post:t -> t Eval.or_bottomInitialization of variables.
val empty : unit -> tval initialize_variable : Eval.lval -> initialized:bool -> Abstract_domain.init_value -> t -> tval enter_scope : Abstract_domain.variable_kind -> Frama_c_kernel.Cil_types.varinfo list -> t -> tval leave_scope : Frama_c_kernel.Cil_types.kernel_function -> Frama_c_kernel.Cil_types.varinfo list -> t -> tPretty printers.
include Frama_c_kernel.Datatype.S with type t := t
include Fclib.Datatype.S_no_copy with type t := t
include Fclib.Datatype.Ty with type t := t
val ty : t Fclib.Type.tval datatype_descr : t Fclib.Descr.tDatatype descriptor.
val packed_descr : Fclib.Structural_descr.packPacked version of the descriptor.
val reprs : t listList of representants of the descriptor.
val hash : t -> intHash function: same spec than Hashtbl.hash.
val pretty : Stdlib.Format.formatter -> t -> unitPretty print each value in an user-friendly way.
val mem_project : (Fclib.Project_skeleton.t -> bool) -> t -> boolmem_project f x must return true iff there is a value p of type Project.t in x such that f p returns true.
