private static void CollectIntersections(SortedCollection4 collection, BTreeRangeUnion union, BTreeRangeSingle single) { var ranges = union.Ranges(); while (ranges.MoveNext()) { var current = (BTreeRangeSingle) ranges.Current; if (single.Overlaps(current)) { collection.Add(single.Intersect(current)); } } }
private static void CollectIntersections(SortedCollection4 collection, BTreeRangeUnion union, BTreeRangeSingle single) { IEnumerator ranges = union.Ranges(); while (ranges.MoveNext()) { BTreeRangeSingle current = (BTreeRangeSingle)ranges.Current; if (single.Overlaps(current)) { collection.Add(single.Intersect(current)); } } }
private static bool CanBeMerged(BTreeRangeSingle range1, BTreeRangeSingle range2) { return(range1.Overlaps(range2) || range1.Adjacent(range2)); }
private static bool CanBeMerged(BTreeRangeSingle range1, BTreeRangeSingle range2) { return range1.Overlaps(range2) || range1.Adjacent(range2); }