module AVL_PolySet:
This functor is similar to the Reins.AVLSet.PolySet module above,
except it allows the user to specify the maximum difference
between the heights of two subtrees at a node with HeightDiff.v.
The choice of this value affects the amount of effort spent
rebalancing the tree after it has been modified in exchange for
the cost of locating a particular element in the tree. The
modules Reins.AVLSet.PolySet1, Reins.AVLSet.PolySet2, and
Reins.AVLSet.PolySet3 below instantiate this functor with the values
1, 2, and 3 respectively. Those modules are also defined in the
same compilation unit as the implementation code, so the value of
HeightDiff.v is inlined, increasing performance.
| Parameters: |
HeightDiff |
: |
sig val v : int end
|
|
type 'a t
type 'a cursor
type ('a, 'b) result
include Reins.Sets.Set_
val to_string : ('a -> string) -> 'a set -> string