Node
CFG node. Corresponds to a program point between program statements.
include module type of struct include Printable.StdLeaf end
include module type of struct include Node0 end
type t = Node0.t =
| Statement of CilType.Stmt.t
The statements as identified by CIL
*)| FunctionEntry of CilType.Fundec.t
| Function of CilType.Fundec.t
The variable information associated with the function declaration.
*)A node in the Control Flow Graph is either a statement or function. Think of * the function node as last node that all the returning nodes point to. So * the result of the function call is contained in the function node.
val hash : t -> int
val _ : t -> Yojson.Safe.t
val location : t -> GoblintCil.Cil.location
val current_node : t option Stdlib.ref
val pretty_plain : unit -> t -> GoblintCil.Pretty.doc
Pretty node plainly with entire stmt.
val pretty_plain_short : unit -> t -> GoblintCil.Pretty.doc
Pretty node plainly with stmt location.
val pretty_trace : unit -> t -> GoblintCil.Pretty.doc
Pretty node for solver variable tracing with short stmt.
val pretty : unit -> t -> GoblintCil.Pretty.doc
Output functions for Printable interface
val show_id : t -> string
Show node ID for CFG and results output.
val show_cfg : t -> string
Show node label for CFG.
val find_fundec : t -> GoblintCil.fundec
Find fundec
which the node is in. In an incremental run this might yield old fundecs for pseudo-return nodes from the old file.
val of_id : string -> t