module Ast:sig
..end
exception Bad_Initialization of string
Ast.get
below.exception NoUntypedAst
module UntypedFiles:sig
..end
val get : unit -> Cil_types.file
File
has to be called
before using this function.Bad_Initialization
if neither File.init_from_c_files
nor File.init_project_from_cil_file
nor File.init_from_cmdline
was
called before.val compute : unit -> unit
Bad_Initialization
if neither File.init_from_c_files
nor File.init_project_from_cil_file
nor File.init_from_cmdline
was
called before.val is_computed : unit -> bool
val mark_as_changed : unit -> unit
val mark_as_grown : unit -> unit
val add_monotonic_state : State.t -> unit
Ast.mark_as_grown
will
not erase such states, while Ast.mark_as_changed
and clearing Ast.self
itself will.val self : State.t
val apply_after_computed : (Cil_types.file -> unit) -> unit
Functions below should not be called by casual users.
val is_def_or_last_decl : Cil_types.global -> bool
true
if the global is the last one in the AST to introduce a given
variable. Used by visitor and printer to relate funspec with appropriate
global, and the GUI to remove redundant declarations of globals.
Complexity: O(nb of globals) for the first call, then O(1).
Since Oxygen-20120901
val def_or_last_decl : Cil_types.varinfo -> Cil_types.global
def_or_last_decl v
returns the global g
declaring or defining
g
such that is_def_or_last_decl g
is true.
v
must be a global variable declared in the AST.
Since Aluminium-20160501
val clear_last_decl : unit -> unit
val set_file : Cil_types.file -> unit
val set_default_initialization : (unit -> unit) -> unit
val mark_as_computed : unit -> unit
val add_hook_on_update : (unit -> unit) -> unit