Module Blocks.BidirectionalMinimal

Parameters

module S : Set.S
module HM : HM

Signature

type vertex = HM.key
val is_directed : bool
val empty : 'a HM.return
val create : ?size:int -> unit -> 'a HM.t
val clear : 'a HM.t -> unit
val is_empty : 'a HM.t -> bool
val copy : 'a HM.t -> 'a HM.t
val nb_vertex : 'a HM.t -> int
val nb_edges : ('a * S.t) HM.t -> int
val out_degree : ('a * S.t) HM.t -> HM.key -> int
val mem_vertex : 'a HM.t -> HM.key -> bool
val unsafe_add_vertex : (S.t * S.t) HM.t -> HM.key -> (S.t * S.t) HM.t
val add_vertex : (S.t * S.t) HM.t -> HM.key -> (S.t * S.t) HM.t
val iter_vertex : (HM.key -> unit) -> 'a HM.t -> unit
val fold_vertex : (HM.key -> 'a -> 'a) -> 'b HM.t -> 'a -> 'a