diff options
author | Luke Shumaker <lukeshu@lukeshu.com> | 2023-02-05 00:31:29 -0700 |
---|---|---|
committer | Luke Shumaker <lukeshu@lukeshu.com> | 2023-02-12 02:43:16 -0700 |
commit | 696a7d192e5eefa53230168a4b200ec0560c8a10 (patch) | |
tree | 039c3c549414c21b15d58c3d695ee87c3feb1402 /lib/containers/intervaltree_test.go | |
parent | b608e4cf9c9e6e5bf5a333e8d78b2800ffcb0c91 (diff) |
containers: Rethink the RBTree interface to be simpler
Diffstat (limited to 'lib/containers/intervaltree_test.go')
-rw-r--r-- | lib/containers/intervaltree_test.go | 28 |
1 files changed, 17 insertions, 11 deletions
diff --git a/lib/containers/intervaltree_test.go b/lib/containers/intervaltree_test.go index 45743a2..30885bd 100644 --- a/lib/containers/intervaltree_test.go +++ b/lib/containers/intervaltree_test.go @@ -18,8 +18,8 @@ func (t *IntervalTree[K, V]) ASCIIArt() string { func (v intervalValue[K, V]) String() string { return fmt.Sprintf("%v) ([%v,%v]", v.Val, - v.SpanOfChildren.Min, - v.SpanOfChildren.Max) + v.ChildSpan.Min, + v.ChildSpan.Max) } func (v NativeOrdered[T]) String() string { @@ -60,15 +60,21 @@ func TestIntervalTree(t *testing.T) { t.Log("\n" + tree.ASCIIArt()) // find intervals that touch [9,20] - intervals := tree.SearchAll(func(k NativeOrdered[int]) int { - if k.Val < 9 { - return 1 - } - if k.Val > 20 { - return -1 - } - return 0 - }) + var intervals []SimpleInterval + tree.Subrange( + func(k NativeOrdered[int]) int { + if k.Val < 9 { + return 1 + } + if k.Val > 20 { + return -1 + } + return 0 + }, + func(v SimpleInterval) bool { + intervals = append(intervals, v) + return true + }) assert.Equal(t, []SimpleInterval{ {6, 10}, |