Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AminoInterfaceOptions ¶
type AminoInterfaceOptions struct {
Priority []string // Disamb priority.
AlwaysDisambiguate bool // If true, include disamb for all types.
}
AminoInterfaceOptions defines options for registering an interface with the Amino codec.
type AminoRegistrar ¶
type AminoRegistrar interface {
// RegisterInterface registers an interface and its concrete type with the Amino codec.
RegisterInterface(interfacePtr any, iopts *AminoInterfaceOptions)
// RegisterConcrete registers a concrete type with the Amino codec.
RegisterConcrete(cdcType interface{}, name string)
}
AminoRegistrar is an interface that allow to register concrete types and interfaces with the Amino codec.
type InterfaceRegistrar ¶
type InterfaceRegistrar interface {
// RegisterInterface associates protoName as the public name for the
// interface passed in as iface. This is to be used primarily to create
// a public facing registry of interface implementations for clients.
// protoName should be a well-chosen public facing name that remains stable.
// RegisterInterface takes an optional list of impls to be registered
// as implementations of iface.
//
// Ex:
// registry.RegisterInterface("cosmos.base.v1beta1.Msg", (*sdk.Msg)(nil))
RegisterInterface(protoName string, iface interface{}, impls ...transaction.Msg)
// RegisterImplementations registers impls as concrete implementations of
// the interface iface.
//
// Ex:
// registry.RegisterImplementations((*sdk.Msg)(nil), &MsgSend{}, &MsgMultiSend{})
RegisterImplementations(iface interface{}, impls ...transaction.Msg)
}
InterfaceRegistrar is an interface for registering interfaces and their implementation. It is a subset of the Cosmos SDK InterfaceRegistry for registration only.
Click to show internal directories.
Click to hide internal directories.