package stog

  1. Overview
  2. Docs

Parameters

Signature

type key = P.t
type edge_data = Edge.t
type t
val create : unit -> t
val marshal : t -> string
val unmarshal : string -> t
val succ : t -> key -> (key * edge_data) list
val pred : t -> key -> (key * edge_data) list
val add : t -> (key * key * edge_data) -> t
val rem : t -> (key * key) -> (edge_data -> bool) -> t
val rem_all : t -> (key * key) -> t
val isolate : t -> key -> t
val remove_node : t -> key -> t
val pred_roots : ?ignore_deps:edge_data list -> t -> key list
val succ_roots : t -> key list
val recursive_succs : t -> ?pred:(edge_data -> bool) -> key -> key list
val recursive_preds : t -> ?pred:(edge_data -> bool) -> key -> key list
val reverse : t -> t
val fold_succ : t -> (key -> (key * edge_data) list -> 'a -> 'a) -> 'a -> 'a
val fold_pred : t -> (key -> (key * edge_data) list -> 'a -> 'a) -> 'a -> 'a
val iter_succ : t -> (key -> (key * edge_data) list -> unit) -> unit
val iter_pred : t -> (key -> (key * edge_data) list -> unit) -> unit
val dot_of_graph : ?f_edge:(edge_data -> string * (string * string) list) -> f_node:(key -> string * string * (string * string) list) -> t -> string
val nodes_by_pred_order : t -> key list
val shortest_path : t -> (t -> (key * key) -> (float * edge_data) option) -> (key * key) -> (key * edge_data * key) list
OCaml

Innovation. Community. Security.