Skip to content

Commit db4d4a8

Browse files
committed
Reduce allocations in Networks
Slice length of 64 is used as most IPv6 trees will have that as their maximum depth.
1 parent 8c18e16 commit db4d4a8

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

traverse.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -93,13 +93,14 @@ func (r *Reader) NetworksWithin(prefix netip.Prefix, options ...NetworksOption)
9393
})
9494
}
9595

96-
nodes := []netNode{
97-
{
96+
nodes := make([]netNode, 0, 64)
97+
nodes = append(nodes,
98+
netNode{
9899
ip: prefix.Addr(),
99100
bit: uint(bit),
100101
pointer: pointer,
101102
},
102-
}
103+
)
103104

104105
for len(nodes) > 0 {
105106
node := nodes[len(nodes)-1]

0 commit comments

Comments
 (0)