Change signature of GetSubtrees

This commit is contained in:
Nick Tobey
2025-08-27 12:29:53 -07:00
parent 1844ceb197
commit e79fd1e0ba
5 changed files with 10 additions and 21 deletions
+1 -2
View File
@@ -191,8 +191,7 @@ func TestWriteImmutableTree(t *testing.T) {
root, err = root.loadSubtrees()
require.NoError(t, err)
for i := range expSubtrees {
sc, err := root.getSubtreeCount(i)
require.NoError(t, err)
sc := root.GetSubtreeCount(i)
assert.Equal(t, expSubtrees[i], sc)
}
}
+1 -4
View File
@@ -295,10 +295,7 @@ func insertNode[K ~[]byte, S message.Serializer, O Ordering[K]](ctx context.Cont
return err
}
for i := 0; i < nd.Count(); i++ {
subtreeCount, err := nd.getSubtreeCount(i)
if err != nil {
return err
}
subtreeCount := nd.GetSubtreeCount(i)
err = insertNode[K, S, O](ctx, tc, nil, K(nd.GetKey(i)), nd.getAddress(i), subtreeCount, level-1, order)
if err != nil {
return err
+3 -3
View File
@@ -174,12 +174,12 @@ func (nd Node) loadSubtrees() (Node, error) {
return nd, err
}
func (nd Node) getSubtreeCount(i int) (uint64, error) {
func (nd Node) GetSubtreeCount(i int) uint64 {
if nd.IsLeaf() {
return 1, nil
return 1
}
// this will panic unless subtrees were loaded.
return (*nd.subtrees)[i], nil
return (*nd.subtrees)[i]
}
// getAddress returns the |ith| address of this node.
+4 -10
View File
@@ -114,7 +114,7 @@ func newCursorAtOrdinal(ctx context.Context, ns NodeStore, nd Node, ord uint64)
nd, _ = nd.loadSubtrees()
for idx = 0; idx < nd.Count(); idx++ {
cnt, _ := nd.getSubtreeCount(idx)
cnt := nd.GetSubtreeCount(idx)
card := int64(cnt)
if (distance - card) < 0 {
break
@@ -150,10 +150,7 @@ func getOrdinalOfCursor(curr *cursor) (ord uint64, err error) {
}
for idx := curr.idx - 1; idx >= 0; idx-- {
cnt, err := curr.nd.getSubtreeCount(idx)
if err != nil {
return 0, err
}
cnt := curr.nd.GetSubtreeCount(idx)
ord += cnt
}
}
@@ -294,10 +291,7 @@ func recursiveFetchLeafNodeSpan(ctx context.Context, ns NodeStore, nodes []Node,
}
for i := 0; i < nd.Count(); i++ {
card, err := nd.getSubtreeCount(i)
if err != nil {
return nil, 0, err
}
card := nd.GetSubtreeCount(i)
if acc == 0 && card < start {
start -= card
@@ -392,7 +386,7 @@ func (cur *cursor) currentSubtreeSize() (uint64, error) {
if err != nil {
return 0, err
}
return cur.nd.getSubtreeCount(cur.idx)
return cur.nd.GetSubtreeCount(cur.idx), nil
}
func (cur *cursor) firstKey() Item {
+1 -2
View File
@@ -84,8 +84,7 @@ func histLevelCount(t *testing.T, nodes []Node) int {
n, err := n.loadSubtrees()
require.NoError(t, err)
for i := 0; i < n.Count(); i++ {
subCnt, err := n.getSubtreeCount(i)
require.NoError(t, err)
subCnt := n.GetSubtreeCount(i)
cnt += int(subCnt)
}
}