Frama-C API - Functions
Functions. The AST should be computed before using this module (cf. Ast.compute).
val self : State.tGetters
val mem : Cil_types.varinfo -> boolReturns true is this variable is associated to some kernel function
val get : Cil_types.varinfo -> Cil_types.kernel_functionval get_params : Cil_types.kernel_function -> Cil_types.varinfo listval get_vi : Cil_types.kernel_function -> Cil_types.varinfoMembership
Searching
val find_by_name : string -> Cil_types.kernel_functionval find_all_by_orig_name : ?cmp:(Cil_types.kernel_function -> Cil_types.kernel_function -> int) -> string -> Cil_types.kernel_function listfind_all_by_orig_name ?cmp name returns the list of functions whose original name is name, sorted according to cmp. If cmp is None, the resulting order is unspecified.
val find_def_by_name : string -> Cil_types.kernel_functionval find_decl_by_name : string -> Cil_types.kernel_functionIterators
val iter : (Cil_types.kernel_function -> unit) -> unitval fold : (Cil_types.kernel_function -> 'a -> 'a) -> 'a -> 'aval iter_on_fundecs : (Cil_types.fundec -> unit) -> unitSetters
Functions of this section should not be called by casual users.
val add : Cil_types.cil_function -> unitTODO: remove this function and replace all calls by:
val remove : Cil_types.varinfo -> unitRemoves the given varinfo, which must have already been removed from the AST. Warning: this is very dangerous.
val replace_by_declaration : Cil_types.funspec -> Cil_types.varinfo -> Cil_types.location -> unitNote: if the varinfo is already registered and bound to a definition, the definition will be erased only if vdefined is false. Otherwise, you're trying to register a declaration for a varinfo that is supposed to be defined, which does not look very good.
val replace_by_definition : Cil_types.funspec -> Cil_types.fundec -> Cil_types.location -> unitTODO: do not take a funspec as argument
val register : Cil_types.kernel_function -> unit