package ocamlgraph

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Common implementation to all the unlabeled (directed) graphs.

Parameters

module V : Sig.COMPARABLE
module HM : HM with type key = V.t

Signature

module S : sig ... end
module E : sig ... end
type edge = E.t
val mem_edge : S.t HM.t -> HM.key -> S.elt -> bool
val mem_edge_e : S.t HM.t -> (HM.key * S.elt) -> bool
val find_edge : S.t HM.t -> HM.key -> S.elt -> HM.key * S.elt
val find_all_edges : S.t HM.t -> HM.key -> S.elt -> (HM.key * S.elt) list
val unsafe_remove_edge : S.t HM.t -> HM.key -> S.elt -> S.t HM.t
val unsafe_remove_edge_e : S.t HM.t -> (HM.key * S.elt) -> S.t HM.t
val remove_edge : S.t HM.t -> HM.key -> HM.key -> S.t HM.t
val remove_edge_e : S.t HM.t -> (HM.key * HM.key) -> S.t HM.t
val iter_succ : (S.elt -> unit) -> S.t HM.t -> HM.key -> unit
val fold_succ : (S.elt -> 'a -> 'a) -> S.t HM.t -> HM.key -> 'a -> 'a
val iter_succ_e : ((HM.key * S.elt) -> unit) -> S.t HM.t -> HM.key -> unit
val fold_succ_e : ((HM.key * S.elt) -> 'a -> 'a) -> S.t HM.t -> HM.key -> 'a -> 'a
val succ : S.t HM.t -> HM.key -> S.elt list
val succ_e : S.t HM.t -> HM.key -> (HM.key * S.elt) list
val map_vertex : (HM.key -> HM.key) -> S.t HM.t -> S.t HM.t
module I : sig ... end
include module type of struct include I end
type t = S.t HM.t
module PV = I.PV
module PE = I.PE
val iter_edges : (HM.key -> S.elt -> unit) -> S.t HM.t -> unit
val fold_edges : (HM.key -> S.elt -> 'a -> 'a) -> S.t HM.t -> 'a -> 'a
val iter_edges_e : ((HM.key * S.elt) -> unit) -> S.t HM.t -> unit
val fold_edges_e : ((HM.key * S.elt) -> 'a -> 'a) -> S.t HM.t -> 'a -> 'a
include sig ... end
val iter_pred : (V.t -> unit) -> S.t HM.t -> V.t -> unit
val fold_pred : (V.t -> 'a -> 'a) -> S.t HM.t -> V.t -> 'a -> 'a
val pred : S.t HM.t -> V.t -> V.t list
val in_degree : S.t HM.t -> V.t -> int
val iter_pred_e : ((V.t * V.t) -> unit) -> S.t HM.t -> V.t -> unit
val fold_pred_e : ((V.t * V.t) -> 'a -> 'a) -> S.t HM.t -> V.t -> 'a -> 'a
val pred_e : S.t HM.t -> V.t -> (V.t * V.t) list