2020-01-24 07:32:00 -08:00
|
|
|
package codec
|
|
|
|
|
2020-05-19 13:17:29 -07:00
|
|
|
// AminoCodec defines a codec that utilizes Codec for both binary and JSON
|
2020-01-24 07:32:00 -08:00
|
|
|
// encoding.
|
|
|
|
type AminoCodec struct {
|
2020-05-19 13:17:29 -07:00
|
|
|
*Codec
|
2020-05-06 13:47:03 -07:00
|
|
|
}
|
|
|
|
|
2020-05-19 13:17:29 -07:00
|
|
|
var _ Marshaler = &AminoCodec{}
|
2020-05-06 13:47:03 -07:00
|
|
|
|
2020-05-19 13:17:29 -07:00
|
|
|
func NewAminoCodec(codec *Codec) *AminoCodec {
|
|
|
|
return &AminoCodec{Codec: codec}
|
2020-05-06 13:47:03 -07:00
|
|
|
}
|
|
|
|
|
2020-01-24 07:32:00 -08:00
|
|
|
func (ac *AminoCodec) MarshalBinaryBare(o ProtoMarshaler) ([]byte, error) {
|
2020-05-19 13:17:29 -07:00
|
|
|
return ac.Codec.MarshalBinaryBare(o)
|
2020-01-24 07:32:00 -08:00
|
|
|
}
|
|
|
|
|
|
|
|
func (ac *AminoCodec) MustMarshalBinaryBare(o ProtoMarshaler) []byte {
|
2020-05-19 13:17:29 -07:00
|
|
|
return ac.Codec.MustMarshalBinaryBare(o)
|
2020-01-24 07:32:00 -08:00
|
|
|
}
|
|
|
|
|
|
|
|
func (ac *AminoCodec) MarshalBinaryLengthPrefixed(o ProtoMarshaler) ([]byte, error) {
|
2020-05-19 13:17:29 -07:00
|
|
|
return ac.Codec.MarshalBinaryLengthPrefixed(o)
|
2020-01-24 07:32:00 -08:00
|
|
|
}
|
|
|
|
|
|
|
|
func (ac *AminoCodec) MustMarshalBinaryLengthPrefixed(o ProtoMarshaler) []byte {
|
2020-05-19 13:17:29 -07:00
|
|
|
return ac.Codec.MustMarshalBinaryLengthPrefixed(o)
|
2020-01-24 07:32:00 -08:00
|
|
|
}
|
|
|
|
|
|
|
|
func (ac *AminoCodec) UnmarshalBinaryBare(bz []byte, ptr ProtoMarshaler) error {
|
2020-05-19 13:17:29 -07:00
|
|
|
return ac.Codec.UnmarshalBinaryBare(bz, ptr)
|
2020-01-24 07:32:00 -08:00
|
|
|
}
|
|
|
|
|
|
|
|
func (ac *AminoCodec) MustUnmarshalBinaryBare(bz []byte, ptr ProtoMarshaler) {
|
2020-05-19 13:17:29 -07:00
|
|
|
ac.Codec.MustUnmarshalBinaryBare(bz, ptr)
|
2020-01-24 07:32:00 -08:00
|
|
|
}
|
|
|
|
|
|
|
|
func (ac *AminoCodec) UnmarshalBinaryLengthPrefixed(bz []byte, ptr ProtoMarshaler) error {
|
2020-05-19 13:17:29 -07:00
|
|
|
return ac.Codec.UnmarshalBinaryLengthPrefixed(bz, ptr)
|
2020-01-24 07:32:00 -08:00
|
|
|
}
|
|
|
|
|
|
|
|
func (ac *AminoCodec) MustUnmarshalBinaryLengthPrefixed(bz []byte, ptr ProtoMarshaler) {
|
2020-05-19 13:17:29 -07:00
|
|
|
ac.Codec.MustUnmarshalBinaryLengthPrefixed(bz, ptr)
|
2020-05-05 07:28:20 -07:00
|
|
|
}
|