Module Register


module Register: sig .. end

module SGraph: Graph.Imperative.Digraph.ConcreteLabeled(Kernel_function)(sig
include Cilutil.StmtComparable
val default : Cil_types.stmt
end)
module SGState: Computation.OptionRef(Project.Datatype.Imperative(sig
include SGraph
val name : string
end))(sig
val name : string
val dependencies : Project.Computation.t list
end)
module SCQueue: Computation.Queue(Kernel_function.Datatype)(sig
val name : string
val dependencies : Project.Computation.t list
end)
val callgraph : unit -> SGState.data
module Service: Service_graph.Make(sig
val datatype_name : string
type t = Register.SGraph.t 
module V: sig .. end
val iter_vertex : (Register.SGraph.vertex -> unit) -> Register.SGraph.t -> unit
val iter_succ : (Register.SGraph.vertex -> unit) ->
Register.SGraph.t -> Register.SGraph.vertex -> unit
val iter_pred : (Register.SGraph.vertex -> unit) ->
Register.SGraph.t -> Register.SGraph.vertex -> unit
val fold_pred : (Register.SGraph.vertex -> 'a -> 'a) ->
Register.SGraph.t -> Register.SGraph.vertex -> 'a -> 'a
val in_degree : Register.SGraph.t -> Register.SGraph.vertex -> int
end)
module ServiceState: Computation.OptionRef(Service.CallG.Datatype)(sig
val name : string
val dependencies : Project.Computation.t list
end)
val get_init_funcs : unit -> Cilutil.StringSet.t
val compute : unit -> Service.CallG.t
val get : unit -> ServiceState.data
val dump : unit -> unit
val topologically_iter_on_functions : (SCQueue.elt -> unit) -> unit