module Diameter: sig
.. end
Traversal algorithms with tree construction.
module type G = sig
.. end
Minimal signature needed for graphs.
module MakeGen (
G
:
G
)
(
Opt
:
sig
val symmetric : bool
val unweighted : bool
val uniform_edge_weight : G.W.t option
end
)
: sig
.. end
module NoOpt: sig
.. end
module Make (
G
:
G
)
: MakeGen
(
G
)
(
NoOpt
)
module Symmetric (
G
:
Sig.WeightedGraphAlgo
)
: MakeGen
(
sig
include G
val reverse : 'a -> 'a
end
)
(
sig
include NoOpt
val symmetric : bool
end
)
module IntWeight: sig
.. end
module Unweighted (
G
:
sig
include Sig.GraphAlgo
val reverse : t -> t
end
)
: MakeGen
(
sig
include G
type
label = int
val iter_labeled_succ : 'a -> 'b -> 'c
module WT: I
module W: Diameter.IntWeight
end
)
(
sig
val symmetric : bool
val unweighted : bool
val uniform_edge_weight : int option
end
)
module UnweightedSymmetric (
G
:
Sig.GraphAlgo
)
: MakeGen
(
sig
include G
val reverse : 'a -> 'a
type
label = int
val iter_labeled_succ : 'a -> 'b -> 'c
module WT: I
module W: Diameter.IntWeight
end
)
(
sig
val symmetric : bool
val unweighted : bool
val non_weight : int option
val uniform_edge_weight : int option
end
)