package types import ( "github.com/cosmos/cosmos-sdk/codec" ) type Codec struct { codec.Marshaler // Keep reference to the amino codec to allow backwards compatibility along // with type, and interface registration. amino *codec.Codec } func NewCodec(amino *codec.Codec) *Codec { return &Codec{Marshaler: codec.NewHybridCodec(amino), amino: amino} } // module codec var ModuleCdc *Codec func init() { ModuleCdc = NewCodec(codec.New()) RegisterCodec(ModuleCdc.amino) ModuleCdc.amino.Seal() } // RegisterCodec registers all necessary param module types with a given codec. func RegisterCodec(cdc *codec.Codec) { cdc.RegisterConcrete(ParameterChangeProposal{}, "cosmos-sdk/ParameterChangeProposal", nil) }