Adds a new element to the tree.
Removes an element from the tree.
Filters the tree to contain only those elements that are completely contained within a given interval.
Filters the tree to contain only those elements that are completely contained within a given interval. Containment means that found_start <= query_start &&
the query interval
the filtered tree whose elements are contained within the query interval
Filters the tree to contain only those elements that overlap a given interval.
Filters the tree to contain only those elements that overlap a given interval. An overlap occurs if the intersection between query interval and found interval is non-empty. In other words, found_start < query_stop && found_stop > query_start.
the query interval
the filtered tree whose elements overlap the query interval
Find an element that contains a given point.
Find an element that contains a given point.
A point is contained in if found_start <= point && found_stop > point.
Elements with empty intervals will thus not be detected (the interval
version of this method can)
the query point
the element containing the point, or None
if such an element does not exist.
Finds an element that overlaps a given interval.
Finds an element that overlaps a given interval. An overlap occurs if the intersection between query interval and found interval is non-empty. In other words, found_start < query_stop && found_stop > query_start. Of the candidates, returns the one with the lowest start point.
the query interval
the element which overlaps the query interval, or None
if there is none.
Filters the tree to contain only those elements that contain a given point.
Filters the tree to contain only those elements that contain a given point. An element contains the point if its interval start is less than or equal to that point and its interval stop is greater than that point.
the intersection point
the filtered tree having only elements which contain the point
Returns the total interval covered by the sequence, or None
if the range is empty