mirror of
				https://github.com/0glabs/0g-chain.git
				synced 2025-11-04 00:27:41 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			33 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
package simulation
 | 
						|
 | 
						|
// import (
 | 
						|
// 	"bytes"
 | 
						|
// 	"fmt"
 | 
						|
 | 
						|
// 	"github.com/cosmos/cosmos-sdk/codec"
 | 
						|
 | 
						|
// 	"github.com/tendermint/tendermint/libs/kv"
 | 
						|
 | 
						|
// 	"github.com/0glabs/0g-chain/x/pricefeed/types"
 | 
						|
// )
 | 
						|
 | 
						|
// // DecodeStore unmarshals the KVPair's Value to the corresponding pricefeed type
 | 
						|
// func DecodeStore(cdc *codec.Codec, kvA, kvB kv.Pair) string {
 | 
						|
// 	switch {
 | 
						|
// 	case bytes.Contains(kvA.Key, []byte(types.CurrentPricePrefix)):
 | 
						|
// 		var priceA, priceB types.CurrentPrice
 | 
						|
// 		cdc.MustUnmarshalBinaryBare(kvA.Value, &priceA)
 | 
						|
// 		cdc.MustUnmarshalBinaryBare(kvB.Value, &priceB)
 | 
						|
// 		return fmt.Sprintf("%s\n%s", priceA, priceB)
 | 
						|
 | 
						|
// 	case bytes.Contains(kvA.Key, []byte(types.RawPriceFeedPrefix)):
 | 
						|
// 		var postedPriceA, postedPriceB []types.PostedPrice
 | 
						|
// 		cdc.MustUnmarshalBinaryBare(kvA.Value, &postedPriceA)
 | 
						|
// 		cdc.MustUnmarshalBinaryBare(kvB.Value, &postedPriceB)
 | 
						|
// 		return fmt.Sprintf("%s\n%s", postedPriceA, postedPriceB)
 | 
						|
 | 
						|
// 	default:
 | 
						|
// 		panic(fmt.Sprintf("invalid %s key prefix %X", types.ModuleName, kvA.Key[:1]))
 | 
						|
// 	}
 | 
						|
// }
 |