functor (G : G) ->
functor
(W : sig
type label = G.E.label
and t
val weight : Path.WEIGHT.label -> Path.WEIGHT.t
val zero : Path.WEIGHT.t
val add : Path.WEIGHT.t -> Path.WEIGHT.t -> Path.WEIGHT.t
val compare : Path.WEIGHT.t -> Path.WEIGHT.t -> int
end) ->
sig
val shortest_path : Path.G.t -> G.V.t -> G.V.t -> Path.G.E.t list * W.t
end