github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/x/staking/types/codec.go (about)

     1  package types
     2  
     3  import (
     4  	"github.com/fibonacci-chain/fbc/libs/cosmos-sdk/codec"
     5  )
     6  
     7  // RegisterCodec registers concrete types for codec
     8  func RegisterCodec(cdc *codec.Codec) {
     9  	cdc.RegisterConcrete(MsgCreateValidator{}, "fbexchain/staking/MsgCreateValidator", nil)
    10  	cdc.RegisterConcrete(MsgEditValidator{}, "fbexchain/staking/MsgEditValidator", nil)
    11  	cdc.RegisterConcrete(MsgEditValidatorCommissionRate{}, "fbexchain/staking/MsgEditValidatorCommissionRate", nil)
    12  	cdc.RegisterConcrete(MsgDestroyValidator{}, "fbexchain/staking/MsgDestroyValidator", nil)
    13  	cdc.RegisterConcrete(MsgDeposit{}, "fbexchain/staking/MsgDeposit", nil)
    14  	cdc.RegisterConcrete(MsgWithdraw{}, "fbexchain/staking/MsgWithdraw", nil)
    15  	cdc.RegisterConcrete(MsgAddShares{}, "fbexchain/staking/MsgAddShares", nil)
    16  	cdc.RegisterConcrete(MsgRegProxy{}, "fbexchain/staking/MsgRegProxy", nil)
    17  	cdc.RegisterConcrete(MsgBindProxy{}, "fbexchain/staking/MsgBindProxy", nil)
    18  	cdc.RegisterConcrete(MsgUnbindProxy{}, "fbexchain/staking/MsgUnbindProxy", nil)
    19  }
    20  
    21  // ModuleCdc is generic sealed codec to be used throughout this module
    22  var ModuleCdc *codec.Codec
    23  
    24  func init() {
    25  	ModuleCdc = codec.New()
    26  	RegisterCodec(ModuleCdc)
    27  	codec.RegisterCrypto(ModuleCdc)
    28  	ModuleCdc.Seal()
    29  }