Module type Sig.EDGE


module type EDGE = sig .. end


Edges are ORDERED.
type t 
val compare : t -> t -> int

Edges are directed.
type vertex 
val src : t -> vertex
val dst : t -> vertex

Edges are labeled.
type label 
val create : vertex -> label -> vertex -> t
create v1 l v2 creates an edge from v1 to v2 with label l
val label : t -> label