github.com/Finschia/finschia-sdk@v0.48.1/x/slashing/types/codec.go (about)

     1  package types
     2  
     3  import (
     4  	"github.com/Finschia/finschia-sdk/codec"
     5  	"github.com/Finschia/finschia-sdk/codec/legacy"
     6  	"github.com/Finschia/finschia-sdk/codec/types"
     7  	cryptocodec "github.com/Finschia/finschia-sdk/crypto/codec"
     8  	sdk "github.com/Finschia/finschia-sdk/types"
     9  	"github.com/Finschia/finschia-sdk/types/msgservice"
    10  	authzcodec "github.com/Finschia/finschia-sdk/x/authz/codec"
    11  	fdncodec "github.com/Finschia/finschia-sdk/x/foundation/codec"
    12  	govcodec "github.com/Finschia/finschia-sdk/x/gov/codec"
    13  )
    14  
    15  // RegisterLegacyAminoCodec registers concrete types on LegacyAmino codec
    16  func RegisterLegacyAminoCodec(cdc *codec.LegacyAmino) {
    17  	legacy.RegisterAminoMsg(cdc, &MsgUnjail{}, "cosmos-sdk/MsgUnjail")
    18  }
    19  
    20  func RegisterInterfaces(registry types.InterfaceRegistry) {
    21  	registry.RegisterImplementations((*sdk.Msg)(nil),
    22  		&MsgUnjail{},
    23  	)
    24  
    25  	msgservice.RegisterMsgServiceDesc(registry, &_Msg_serviceDesc)
    26  }
    27  
    28  var (
    29  	amino     = codec.NewLegacyAmino()
    30  	ModuleCdc = codec.NewAminoCodec(amino)
    31  )
    32  
    33  func init() {
    34  	RegisterLegacyAminoCodec(amino)
    35  	cryptocodec.RegisterCrypto(amino)
    36  	sdk.RegisterLegacyAminoCodec(amino)
    37  
    38  	// Register all Amino interfaces and concrete types on the authz  and gov Amino codec so that this can later be
    39  	// used to properly serialize MsgGrant, MsgExec and MsgSubmitProposal instances
    40  	RegisterLegacyAminoCodec(authzcodec.Amino)
    41  	RegisterLegacyAminoCodec(govcodec.Amino)
    42  	RegisterLegacyAminoCodec(fdncodec.Amino)
    43  }