package bst

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

Functorial interface.

module type Point = sig ... end
type vp_heuristic =
  1. | One_band
  2. | Two_bands

Heuristics to find good vantage (reference) points. One_band is faster (at tree construction time), but the resulting tree should be less efficient for queries. Two_bands (recommended) is more expensive (at tree construction time) but queries should be faster. Heuristics inspired by "Near Neighbor Search in Large Metric Spaces"; Sergey Brin; November 20, 1995.

type direction =
  1. | Left
  2. | Right

To reach a point in the bst, you need to follow a path. A path is a list of directions.

type step =
  1. | L of float
  2. | R of float

Part of a point's address in the bst.

val string_of_addr : step list -> string
module Make (P : Point) : sig ... end