# Functions

Compare returns a value indicating the sort order relationship between a and b.
Equal returns a boolean indicating whethter the given Interfaces are equal to each other.
NewRangeList constructs a linked-list backed RangeGroup.
NewRangeTree constructs an interval tree backed RangeGroup.
NewTree creates a new interval tree with the given overlapper function.
RangeGroupsOverlap determines if two RangeGroups contain any overlapping Ranges or if they are fully disjoint.

# Constants

Operation LLRBMode of the underlying LLRB tree.
DefaultBTreeMinimumDegree is the default B-tree minimum degree.
LLRBMode .
Operation LLRBMode of the underlying LLRB tree.

# Variables

ErrEmptyRange is returned if an interval is used where the start value is equal to the end value.
ErrInvertedRange is returned if an interval is used where the start value is greater than the end value.
ExclusiveOverlapper defines overlapping as a pair of ranges that share a segment of the keyspace in the exclusive.
InclusiveOverlapper defines overlapping as a pair of ranges that share a segment of the keyspace in the inclusive way.

# Structs

A Range is a type that describes the basic characteristics of an interval.

# Interfaces

An Interface is a type that can be inserted into an interval tree.
Overlapper specifies the overlapping relationship.
RangeGroup represents a set of possibly disjointed Ranges.
RangeGroupIterator is an iterator that walks in-order over a RangeGroup.
Tree is an interval tree.
TreeIterator iterates over all intervals stored in the interval tree, in-order.

# Type aliases

A Comparable is a type that describes the ends of a Range.
An Operation is a function that operates on an Interface.