Callgraph.Uses
Several useful functions over the callgraph
val iter_in_order : ( Frama_c_kernel.Kernel_function.t -> unit ) -> unit
Iterate over all the functions, in the callgraph order, i.e. from callers to callees. In case of cycles (mutual recursive functions), the order is unspecified.
val iter_in_rev_order : ( Frama_c_kernel.Kernel_function.t -> unit ) -> unit
Iterate over all the functions, in the callgraph reverse order, i.e. from callees to callers. In case of cycles (mutual recursive functions), the order is unspecified.
val iter_on_callers :
( Frama_c_kernel.Kernel_function.t -> unit ) ->
Frama_c_kernel.Kernel_function.t ->
unit
Iterate over all the callers of a given function in a (reverse) depth-first way. Do nothing if the function is not in the callgraph.
val iter_on_callees :
( Frama_c_kernel.Kernel_function.t -> unit ) ->
Frama_c_kernel.Kernel_function.t ->
unit
Iterate over all the callees of a given function in a (reverse) depth-first way. Do nothing if the function is not in the callgraph.
val accept_base :
with_formals:bool ->
with_locals:bool ->
Frama_c_kernel.Kernel_function.t ->
Frama_c_kernel.Base.t ->
bool
accept_base formals locals kf b
returns true
if and only if b
is
kf
kf
and the corresponding argument is true
.