package TCSLib

  1. Overview
  2. Docs
type !'a t =
  1. | Empty
  2. | Node of 'a * int * 'a t * 'a t
val empty : 'a t
val is_empty : 'a t -> bool
val singleton : 'a -> 'a t
val left : 'a t -> 'a t
val right : 'a t -> 'a t
val min_elt : 'a t -> 'a
val max_elt : 'a t -> 'a
val root : 'a t -> 'a
val height : 'a t -> int
val height_join : 'a t -> 'b t -> int
val create : 'a -> 'a t -> 'a t -> 'a t
val balance : 'a -> 'a t -> 'a t -> 'a t
val join : 'a -> 'a t -> 'a t -> 'a t
val take_min : 'a t -> 'a * 'a t
val take_max : 'a t -> 'a * 'a t
val reroot : 'a t -> 'a t -> 'a t
val take_min_iter : 'a t -> 'a * 'a t
val take_min_iter2 : 'a t -> 'a option * 'a t
val take_max_iter : 'a t -> 'a * 'a t
val take_max_iter2 : 'a t -> 'a option * 'a t
val iter : ('a -> 'b) -> 'a t -> unit
val fold : ('a -> 'b -> 'b) -> 'a t -> 'b -> 'b
val fold_right : ('a -> 'b -> 'b) -> 'a t -> 'b -> 'b
val elements : 'a t -> 'a list
val for_all : ('a -> bool) -> 'a t -> bool
val exists : ('a -> bool) -> 'a t -> bool
val cardinal : 'a t -> int
val choose : 'a t -> 'a
OCaml

Innovation. Community. Security.