You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
24 lines
726 B
24 lines
726 B
import { RangeCov } from "./types"; |
|
export declare class RangeTree { |
|
start: number; |
|
end: number; |
|
delta: number; |
|
children: RangeTree[]; |
|
constructor(start: number, end: number, delta: number, children: RangeTree[]); |
|
/** |
|
* @precodition `ranges` are well-formed and pre-order sorted |
|
*/ |
|
static fromSortedRanges(ranges: ReadonlyArray<RangeCov>): RangeTree | undefined; |
|
normalize(): void; |
|
/** |
|
* @precondition `tree.start < value && value < tree.end` |
|
* @return RangeTree Right part |
|
*/ |
|
split(value: number): RangeTree; |
|
/** |
|
* Get the range coverages corresponding to the tree. |
|
* |
|
* The ranges are pre-order sorted. |
|
*/ |
|
toRanges(): RangeCov[]; |
|
}
|
|
|