Module type IntDigraph.LS

module type LS = sig .. end
Signature for labeled digraphs.

include IntDigraph.S
type v_label 
type e_label 
val add_vertex_l : t -> int -> v_label -> unit
val vertex_l : t -> int -> v_label
val add_edge_l : t -> int -> e_label -> int -> unit
val find_edge_l : t -> int -> int -> e_label
val find_all_edges_l : t -> int -> int -> e_label list
val fold_multi_edge_l : (e_label -> 'a -> 'a) -> t -> int -> int -> 'a -> 'a
val iter_succ_l : (e_label -> int -> unit) -> t -> int -> unit
val fold_succ_l : (e_label -> int -> 'a -> 'a) -> t -> int -> 'a -> 'a
val iter_vertex_l : (int -> v_label -> unit) -> t -> unit
val fold_vertex_l : (int -> v_label -> 'a -> 'a) -> t -> 'a -> 'a
val iter_edges_l : (int -> e_label -> int -> unit) -> t -> unit
val fold_edges_l : (int -> e_label -> int -> 'a -> 'a) -> t -> 'a -> 'a
val iter_pred_l : (e_label -> int -> unit) -> t -> int -> unit
val fold_pred_l : (e_label -> int -> 'a -> 'a) -> t -> int -> 'a -> 'a
val label_find_vertex : t -> v_label -> int
val label_add_vertex : t -> v_label -> int
val label_add_edge : t -> v_label -> v_label -> unit
val label_add_edge_l : t ->
v_label ->
e_label -> v_label -> unit
val to_string_l : (v_label -> string) ->
?elab_to_str:(e_label -> string) -> t -> string