Frama-C API - Domain_mode
This module defines the mode to restrict an abstract domain on specific functions.
Permission for an abstract domain to read/write its state. If write is true, the domain infers new properties when interpreting assignments, assumptions, and logical assertions. Otherwise, it only propagates already known properties as long as they hold. If read is true, the domain uses its inferred properties to improve the evaluation of expressions by extracting information from its state. It can also evaluate logical assertions.
Mode for the analysis of a function f:
currentis the read/write permission forf.callsis the read/write permission for all functions called fromf.
module Mode : sig ... endDatatype for modes.
type function_mode = Frama_c_kernel.Kernel_function.t * modeA function associated with an analysis mode.
module Function_Mode : Frama_c_kernel.Parameter_sig.Value_datatype with type t = function_modeAnalysis mode for a domain.
include Frama_c_kernel.Datatype.S with type t = function_mode list
include Frama_c_kernel.Datatype.S_no_copy with type t = function_mode list
include Frama_c_kernel.Datatype.Ty with type t = function_mode list
type t = function_mode listval ty : t Frama_c_kernel.Type.tval datatype_descr : t Frama_c_kernel.Descr.tDatatype descriptor.
val packed_descr : Frama_c_kernel.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 : (Frama_c_kernel.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.
