package containers

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type ('v, 'e) t
val empty : ?hash:('v -> int) -> ?eq:('v -> 'v -> bool) -> int -> ('v, 'e) t
val mk_v_set : ?size:int -> ('v, 'a) t -> 'v Hashset.t
val mk_v_table : ?size:int -> ('v, 'b) t -> ('v, 'a) PHashtbl.t
val copy : ('v, 'e) t -> ('v, 'e) t
val is_empty : ('a, 'b) t -> bool
val length : ('a, 'b) t -> int
val add : ('v, 'e) t -> 'v -> 'e -> 'v -> unit
val add_seq : ('v, 'e) t -> ('v * 'e * 'v) CCSequence.t -> unit
val next : ('v, 'e) t -> 'v -> ('e * 'v) CCSequence.t
val prev : ('v, 'e) t -> 'v -> ('e * 'v) CCSequence.t
val between : ('v, 'e) t -> 'v -> 'v -> 'e CCSequence.t
val iter_vertices : ('v, 'e) t -> ('v -> unit) -> unit
val vertices : ('v, 'e) t -> 'v CCSequence.t
val iter : ('v, 'e) t -> (('v * 'e * 'v) -> unit) -> unit
val to_seq : ('v, 'e) t -> ('v * 'e * 'v) CCSequence.t
val roots : ('v, 'e) t -> 'v CCSequence.t
val leaves : ('v, 'e) t -> 'v CCSequence.t
val choose : ('v, 'e) t -> 'v
val rev_edge : ('v * 'e * 'v) -> 'v * 'e * 'v
val rev : ('v, 'e) t -> unit
val bfs : ('v, 'e) t -> 'v -> ('v -> unit) -> unit
val bfs_seq : ('v, 'e) t -> 'v -> 'v CCSequence.t
val dfs_full : ('v, 'e) t -> ?labels:('v, int) PHashtbl.t -> ?enter:(('v * int) list -> unit) -> ?exit:(('v * int) list -> unit) -> ?tree_edge:(('v * 'e * 'v) -> unit) -> ?fwd_edge:(('v * 'e * 'v) -> unit) -> ?back_edge:(('v * 'e * 'v) -> unit) -> 'v -> unit
val dfs : ('v, 'e) t -> 'v -> (('v * int) -> unit) -> unit
val is_dag : ('v, 'e) t -> bool
type (!'v, !'e) path = ('v * 'e * 'v) list
val rev_path : ('v, 'e) path -> ('v, 'e) path
val min_path_full : ('v, 'e) t -> ?cost:('v -> 'e -> 'v -> int) -> ?ignore:('v -> bool) -> goal:('v -> ('v, 'e) path -> bool) -> 'v -> 'v * int * ('v, 'e) path
val min_path : ('v, 'e) t -> cost:('e -> int) -> 'v -> 'v -> ('v, 'e) path
val diameter : ('v, 'e) t -> 'v -> int
type attribute = [
  1. | `Color of string
  2. | `Label of string
  3. | `Other of string * string
  4. | `Shape of string
  5. | `Style of string
  6. | `Weight of int
]
val pp : name:string -> ?vertices:('v, int) PHashtbl.t -> print_edge:('v -> 'e -> 'v -> attribute list) -> print_vertex:('v -> attribute list) -> Format.formatter -> ('v, 'e) t -> unit
OCaml

Innovation. Community. Security.