Frama-C API - Reason_graph
type reason_type = | Intraprocedural of Pdg_types.PdgTypes.Dpd.t(*The effect of
*)n'infimpactn, which is also inf.| InterproceduralDownward(*the effect of
*)n'infhas an effect on a calleef'off, in whichnis located.| InterproceduralUpward(*the effect of
*)n'infhas an effect on a callerf'off(once the call tofhas ended),nbeing inf'.
Why is a node impacted. The reasons will be given as n is impacted by the effect of [n'], and the impact is of type reason.
module ReasonType : Frama_c_kernel.Datatype.S with type t = reason_typemodule Reason : Frama_c_kernel.Datatype.S_with_collections with type t = Pdg_types.PdgTypes.Node.t * Pdg_types.PdgTypes.Node.t * reason_typetype reason_graph = Reason.Set.ttype nodes_origin = Frama_c_kernel.Cil_types.kernel_function Pdg_types.PdgTypes.Node.Map.tMap from a node to the kernel_function it belongs to
type reason = {reason_graph : reason_graph;nodes_origin : nodes_origin;initial_nodes : Pdg_aux.NS.t;
}module DatatypeReason : Frama_c_kernel.Datatype.S with type t = reasonval empty : reasonval to_dot_formatter : ?in_kf:Frama_c_kernel.Cil_types.kernel_function -> reason -> Stdlib.Format.formatter -> unitval print_dot_graph : reason -> unit