github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/libs/cosmos-sdk/x/supply/simulation/decoder.go (about) 1 package simulation 2 3 import ( 4 "bytes" 5 "fmt" 6 7 tmkv "github.com/fibonacci-chain/fbc/libs/tendermint/libs/kv" 8 9 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/codec" 10 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/x/supply/internal/keeper" 11 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/x/supply/internal/types" 12 ) 13 14 // DecodeStore unmarshals the KVPair's Value to the corresponding supply type 15 func DecodeStore(cdc *codec.Codec, kvA, kvB tmkv.Pair) string { 16 switch { 17 case bytes.Equal(kvA.Key[:1], keeper.SupplyKey): 18 var supplyA, supplyB types.Supply 19 cdc.MustUnmarshalBinaryLengthPrefixed(kvA.Value, &supplyA) 20 cdc.MustUnmarshalBinaryLengthPrefixed(kvB.Value, &supplyB) 21 return fmt.Sprintf("%v\n%v", supplyB, supplyB) 22 default: 23 panic(fmt.Sprintf("invalid supply key %X", kvA.Key)) 24 } 25 }