github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/x/erc20/types/codec.go (about) 1 package types 2 3 import ( 4 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/codec" 5 ) 6 7 // ModuleCdc defines the erc20 module's codec 8 var ModuleCdc = codec.New() 9 10 const ( 11 TokenMappingProposalName = "fbexchain/erc20/TokenMappingProposal" 12 ProxyContractRedirectProposalName = "fbexchain/erc20/ProxyContractRedirectProposal" 13 ContractTemplateProposalName = "fbexchain/erc20/ContractTemplateProposal" 14 CompiledContractProposalName = "fbexchain/erc20/Contract" 15 ) 16 17 // RegisterCodec registers all the necessary types and interfaces for the 18 // erc20 module 19 func RegisterCodec(cdc *codec.Codec) { 20 cdc.RegisterConcrete(TokenMappingProposal{}, TokenMappingProposalName, nil) 21 22 cdc.RegisterConcrete(ProxyContractRedirectProposal{}, ProxyContractRedirectProposalName, nil) 23 cdc.RegisterConcrete(ContractTemplateProposal{}, ContractTemplateProposalName, nil) 24 cdc.RegisterConcrete(CompiledContract{}, CompiledContractProposalName, nil) 25 } 26 27 func init() { 28 RegisterCodec(ModuleCdc) 29 codec.RegisterCrypto(ModuleCdc) 30 ModuleCdc.Seal() 31 }