Skip to content

Commit a7d25ae

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 c320dd5 commit a7d25ae

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
@@ -92,13 +92,14 @@ func (r *Reader) NetworksWithin(prefix netip.Prefix, options ...NetworksOption)
9292
})
9393
}
9494

95-
nodes := []netNode{
96-
{
95+
nodes := make([]netNode, 0, 64)
96+
nodes = append(nodes,
97+
netNode{
9798
ip: prefix.Addr(),
9899
bit: uint(bit),
99100
pointer: pointer,
100101
},
101-
}
102+
)
102103

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

0 commit comments

Comments
 (0)