From 696a7d192e5eefa53230168a4b200ec0560c8a10 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Sun, 5 Feb 2023 00:31:29 -0700 Subject: containers: Rethink the RBTree interface to be simpler --- lib/containers/intervaltree_test.go | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) (limited to 'lib/containers/intervaltree_test.go') 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}, -- cgit v1.2.3-2-g168b