33 lines
721 B
Go
33 lines
721 B
Go
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)
|
|
}
|