mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-07-21 20:26:41 +00:00
improve SplitListValues method by setting capacity
This commit is contained in:
parent
f51870e40e
commit
aa695895d7
1 changed files with 7 additions and 5 deletions
12
rlp/raw.go
12
rlp/raw.go
|
|
@ -158,12 +158,14 @@ func SplitListValues(b []byte) ([][]byte, error) {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
var elements [][]byte
|
n, err := CountValues(b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
var elements = make([][]byte, 0, n)
|
||||||
|
|
||||||
for len(b) > 0 {
|
for len(b) > 0 {
|
||||||
_, tagsize, size, err := readKind(b)
|
_, tagsize, size, _ := readKind(b)
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
elements = append(elements, b[:tagsize+size])
|
elements = append(elements, b[:tagsize+size])
|
||||||
b = b[tagsize+size:]
|
b = b[tagsize+size:]
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue