IntervalTree Class
Signature
export declare class IntervalTree<T extends IInterval> implements IRBAugmentation<T, AugmentedIntervalNode>, IRBMatcher<T, AugmentedIntervalNode>
Implements: IRBAugmentation<T, AugmentedIntervalNode>, IRBMatcher<T, AugmentedIntervalNode
Type Parameters
| Parameter | Constraint | Description |
|---|---|---|
| T | IInterval |
Properties
| Property | Type | Description |
|---|---|---|
| intervals | RedBlackTree<T, AugmentedIntervalNode> |
Methods
| Method | Return Type | Description |
|---|---|---|
| continueSubtree(node, key) | boolean | |
| map(fn) | void | |
| mapBackward(fn) | void | |
| mapUntil(fn) | void | |
| match(x) | RBNode<T, AugmentedIntervalNode>[] | |
| matchNode(node, key) | boolean | |
| put(x, conflict) | void | |
| remove(x) | void | |
| removeExisting(x) | void | |
| update(node) | void |
Property Details
intervals
Signature
intervals: RedBlackTree<T, AugmentedIntervalNode>;
Type: RedBlackTree<T, AugmentedIntervalNode>
Method Details
continueSubtree
Signature
continueSubtree(node: IntervalNode<T> | undefined, key: T): boolean;
Parameters
| Parameter | Type | Description |
|---|---|---|
| node | IntervalNode<T> | undefined | |
| key | T |
Returns
Return type: boolean
map
Signature
map(fn: (x: T) => void): void;
Parameters
| Parameter | Type | Description |
|---|---|---|
| fn | (x: T) => void |
mapBackward
Signature
mapBackward(fn: (x: T) => void): void;
Parameters
| Parameter | Type | Description |
|---|---|---|
| fn | (x: T) => void |
mapUntil
Signature
mapUntil(fn: (X: T) => boolean): void;
Parameters
| Parameter | Type | Description |
|---|---|---|
| fn | (X: T) => boolean |
match
Signature
match(x: T): RBNode<T, AugmentedIntervalNode>[];
Parameters
| Parameter | Type | Description |
|---|---|---|
| x | T |
Returns
Return type: RBNode<T, AugmentedIntervalNode>[]
matchNode
Signature
matchNode(node: IntervalNode<T> | undefined, key: T): boolean;
Parameters
| Parameter | Type | Description |
|---|---|---|
| node | IntervalNode<T> | undefined | |
| key | T |
Returns
Return type: boolean
put
Signature
put(x: T, conflict?: IntervalConflictResolver<T>): void;
Parameters
| Parameter | Modifiers | Type | Description |
|---|---|---|---|
| x | T | ||
| conflict | optional | IntervalConflictResolver<T> |
remove
Signature
remove(x: T): void;
Parameters
| Parameter | Type | Description |
|---|---|---|
| x | T |
removeExisting
Signature
removeExisting(x: T): void;
Parameters
| Parameter | Type | Description |
|---|---|---|
| x | T |
update
Signature
update(node: IntervalNode<T>): void;
Parameters
| Parameter | Type | Description |
|---|---|---|
| node | IntervalNode<T> |