module Dive_graph: sig
.. end
include Graph.Sig.G
module Node: Datatype.S_with_collections
with type t = node
module Dependency: Graph.Sig.COMPARABLE
with type t = dependency
val create : ?size:int -> unit -> t
val create_node : node_kind:Dive_types.node_kind ->
node_locality:Dive_types.node_locality -> t -> Dive_types.node
val remove_node : t -> Dive_types.node -> unit
val update_node_values : Dive_types.node -> Cvalue.V.t -> Cil_types.typ -> unit
val create_dependency : t ->
Cil_types.kinstr ->
Dive_types.node -> Dive_types.dependency_kind -> Dive_types.node -> unit
val remove_dependency : t -> Dive_types.node * Dive_types.dependency * Dive_types.node -> unit
val remove_dependencies : t -> Dive_types.node -> unit
val find_independant_nodes : t -> Dive_types.node list -> Dive_types.node list
val bfs : ?iter_succ:((Dive_types.node -> unit) -> t -> Dive_types.node -> unit) ->
?limit:int -> t -> Dive_types.node list -> Dive_types.node list
val ouptput_to_dot : Stdlib.out_channel -> t -> unit
val ouptput_to_json : Stdlib.out_channel -> t -> unit
val to_json : t -> Json.t
val diff_to_json : t -> Dive_types.graph_diff -> Json.t