mirror of
https://github.com/nspcc-dev/neo-go.git
synced 2025-05-07 15:07:36 +00:00
stackitem: add some hint to 'seen' maps
It's empirical, we usually have one container, but four is likely to fit most of regular cases.
This commit is contained in:
parent
9576e10d04
commit
3eed9d06f8
3 changed files with 11 additions and 5 deletions
|
@ -42,7 +42,7 @@ var ErrTooDeep = errors.New("too deep")
|
|||
// Array, Struct -> array
|
||||
// Map -> map with keys as UTF-8 bytes
|
||||
func ToJSON(item Item) ([]byte, error) {
|
||||
seen := make(map[Item]sliceNoPointer)
|
||||
seen := make(map[Item]sliceNoPointer, typicalNumOfItems)
|
||||
return toJSON(nil, seen, item)
|
||||
}
|
||||
|
||||
|
@ -260,7 +260,7 @@ func (d *decoder) decodeMap() (*Map, error) {
|
|||
|
||||
// ToJSONWithTypes serializes any stackitem to JSON in a lossless way.
|
||||
func ToJSONWithTypes(item Item) ([]byte, error) {
|
||||
result, err := toJSONWithTypes(item, make(map[Item]bool))
|
||||
result, err := toJSONWithTypes(item, make(map[Item]bool, typicalNumOfItems))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue