Frama-C:
Plug-ins:
Libraries:

Frama-C API - Region

type region
type map
module R : Layout.Data with type t = region
module Map : Qed.Idxmap.S with type key = region
module Set : Qed.Idxset.S with type elt = region
val create : unit -> map
val is_empty : map -> bool
val iter : map -> (region -> unit) -> unit
val id : region -> int
val noid : int
val get_addrof : map -> region -> region
val add_pointed : map -> region -> region
val add_offset : map -> region -> Layout.offset -> region
val field_offset : map -> Frama_c_kernel.Cil_types.fieldinfo -> int * int
val get_froms : map -> region -> region Layout.from list
val get_roots : map -> region -> Layout.root
val has_roots : map -> region -> bool
val is_garbled : region -> bool
val has_pointed : region -> bool
val has_layout : region -> bool
val has_offset : region -> Layout.offset -> bool
val has_copies : region -> bool
val has_deref : region -> bool
val has_names : region -> bool
val has_return : map -> bool
val get_pointed : map -> region -> region option
val get_offset : map -> region -> Layout.offset -> region option
val get_copies : map -> region -> region list
val get_alias : map -> region -> region
val get_merged : map -> region -> region option
val eq_alias : map -> region -> region -> bool
val acs_read : region -> Layout.lvalue -> unit
val acs_write : region -> Layout.lvalue -> unit
val acs_shift : region -> Layout.lvalue -> unit
val acs_deref : region -> Layout.deref -> unit
val acs_copy : src:region -> tgt:region -> unit
val is_read : region -> bool
val is_written : region -> bool
val is_shifted : region -> bool
val is_aliased : region -> bool
val iter_read : (Layout.lvalue -> unit) -> region -> unit
val iter_write : (Layout.lvalue -> unit) -> region -> unit
val iter_shift : (Layout.lvalue -> unit) -> region -> unit
val iter_deref : (Layout.deref -> unit) -> region -> unit
val iter_offset : map -> (Layout.offset -> region -> unit) -> region -> unit
val iter_copies : map -> (region -> unit) -> region -> unit
val iter_vars : map -> (Frama_c_kernel.Cil_types.varinfo -> region -> unit) -> unit
val iter_names : map -> (string -> region -> unit) -> unit
val iter_strings : map -> (region -> string -> unit) -> unit
val of_null : map -> region
val of_return : map -> region
val of_cstring : map -> eid:int -> cst:string -> region
val of_name : map -> string -> region
val of_class : map -> string option -> region
val region : map -> int -> region
val cluster : map -> region -> region Layout.cluster
val chunk : map -> region -> region Layout.chunk
val chunks : map -> region -> Layout.chunks
val alias : map -> region -> region -> region
val do_alias : map -> region -> region -> unit
val add_alias : map -> into:region -> region -> unit
val fusion : map -> unit
val fusionned : map -> bool
val iter_fusion : map -> (int -> region -> unit) -> unit
val fixpoint : map -> unit