Module type Sig.EDGE

module type EDGE = sig .. end

Signature for edges.


Edges are Sig.ORDERED_TYPE.

type t 
val compare : t -> t -> int

Edges are directed.

type vertex 
val src : t -> vertex

Edge origin.

val dst : t -> vertex

Edge destination.

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

Get the label of an edge.