Frama-C API - MakeGraph
This functor can be used to build generic control flow graphs
Parameters
module Vertex : Datatype.S_with_hashtbl
module Edge : Datatype.S
Signature
include Graph.Sig.I with type V.t = Vertex.t with type E.t = Vertex.t * Edge.t * Vertex.t with type V.label = Vertex.t with type E.label = Edge.t
module E : sig ... end
type edge = E.t
val is_empty : t -> bool
val nb_vertex : t -> int
val nb_edges : t -> int
val create : ?size:int -> unit -> t
val clear : t -> unit
type wto = vertex Wto.partition
val pretty : t Pretty_utils.formatter
Build a wto for the given automaton. The pref
function is a comparison function used to determine what is the best vertex to use as a Wto component head. See Wto.Make
for more details.
val output_to_dot : ?pp_vertex:V.t Pretty_utils.formatter -> ?pp_edge:E.label Pretty_utils.formatter -> ?wto:wto -> Stdlib.out_channel -> t -> unit
Output the automaton in dot format
val exit_strategy : t -> V.t Wto.component -> wto
Extract an exit strategy from a component, i.e. a sub-wto where all vertices lead outside the wto without passing through the head.