github.com/okex/exchain@v1.8.0/libs/ibc-go/modules/apps/transfer/keeper/encoding.go (about) 1 package keeper 2 3 import ( 4 "github.com/okex/exchain/libs/ibc-go/modules/apps/transfer/types" 5 ) 6 7 // UnmarshalDenomTrace attempts to decode and return an DenomTrace object from 8 // raw encoded bytes. 9 func (k Keeper) UnmarshalDenomTrace(bz []byte) (types.DenomTrace, error) { 10 var denomTrace types.DenomTrace 11 if err := k.cdc.GetProtocMarshal().UnmarshalBinaryBare(bz, &denomTrace); err != nil { 12 return types.DenomTrace{}, err 13 } 14 return denomTrace, nil 15 } 16 17 // MustUnmarshalDenomTrace attempts to decode and return an DenomTrace object from 18 // raw encoded bytes. It panics on error. 19 func (k Keeper) MustUnmarshalDenomTrace(bz []byte) types.DenomTrace { 20 var denomTrace types.DenomTrace 21 k.cdc.GetProtocMarshal().MustUnmarshalBinaryBare(bz, &denomTrace) 22 return denomTrace 23 } 24 25 // MarshalDenomTrace attempts to encode an DenomTrace object and returns the 26 // raw encoded bytes. 27 func (k Keeper) MarshalDenomTrace(denomTrace types.DenomTrace) ([]byte, error) { 28 return k.cdc.GetProtocMarshal().MarshalBinaryBare(&denomTrace) 29 } 30 31 // MustMarshalDenomTrace attempts to encode an DenomTrace object and returns the 32 // raw encoded bytes. It panics on error. 33 func (k Keeper) MustMarshalDenomTrace(denomTrace types.DenomTrace) []byte { 34 return k.cdc.GetProtocMarshal().MustMarshalBinaryBare(&denomTrace) 35 }