github.com/MetalBlockchain/metalgo@v1.11.9/vms/example/xsvm/state/keys.go (about) 1 // Copyright (C) 2019-2024, Ava Labs, Inc. All rights reserved. 2 // See the file LICENSE for licensing terms. 3 4 package state 5 6 var ( 7 initializedKey = []byte{} 8 blockPrefix = []byte{0x00} 9 addressPrefix = []byte{0x01} 10 chainPrefix = []byte{0x02} 11 messagePrefix = []byte{0x03} 12 ) 13 14 func Flatten[T any](slices ...[]T) []T { 15 var size int 16 for _, slice := range slices { 17 size += len(slice) 18 } 19 20 result := make([]T, 0, size) 21 for _, slice := range slices { 22 result = append(result, slice...) 23 } 24 return result 25 }