From 1b3315ef097423f2aef4e4b43996446b17f1a7fa Mon Sep 17 00:00:00 2001 From: Marko Baricevic Date: Mon, 11 Nov 2019 12:37:32 +0100 Subject: [PATCH] some minor touchups --- amino.go | 12 +++++++----- binary-decode.go | 4 ++-- decoder.go | 2 -- json-decode.go | 2 +- repr_test.go | 4 +--- 5 files changed, 11 insertions(+), 13 deletions(-) diff --git a/amino.go b/amino.go index 083897c2..98cb9c4b 100644 --- a/amino.go +++ b/amino.go @@ -169,12 +169,15 @@ func (cdc *Codec) MarshalBinaryLengthPrefixed(o interface{}) ([]byte, error) { // MarshalBinaryLengthPrefixedWriter writes the bytes as would be returned from // MarshalBinaryLengthPrefixed to the writer w. func (cdc *Codec) MarshalBinaryLengthPrefixedWriter(w io.Writer, o interface{}) (n int64, err error) { - // var bz, _n = []byte(nil), int(0) - bz, err := cdc.MarshalBinaryLengthPrefixed(o) + var ( + bz []byte + _n int + ) + bz, err = cdc.MarshalBinaryLengthPrefixed(o) if err != nil { return 0, err } - _n, err := w.Write(bz) // TODO: handle overflow in 32-bit systems. + _n, err = w.Write(bz) // TODO: handle overflow in 32-bit systems. n = int64(_n) return } @@ -419,7 +422,6 @@ func (cdc *Codec) UnmarshalBinaryBare(bz []byte, ptr interface{}) error { // Decode contents into rv. n, err := cdc.decodeReflectBinary(bz, info, rv, FieldOptions{BinFieldNum: 1}, bare) - fmt.Println("I am here") if err != nil { return fmt.Errorf( "unmarshal to %v failed after %d bytes (%v): %X", @@ -462,7 +464,7 @@ func isPointerToStructOrToRepeatedStruct(rv reflect.Value, rt reflect.Type) bool } if isPtr && isNil { - rt = derefType(rt) + rt := derefType(rt) if rt.Kind() == reflect.Struct { return true } diff --git a/binary-decode.go b/binary-decode.go index 3a514424..4da67043 100644 --- a/binary-decode.go +++ b/binary-decode.go @@ -31,8 +31,8 @@ const ( func (cdc *Codec) decodeReflectBinary(bz []byte, info *TypeInfo, rv reflect.Value, fopts FieldOptions, bare bool) (n int, err error) { - fmt.Println(bz, "bz") if !rv.CanAddr() { + fmt.Println(bz, "bz") panic("rv not addressable") } if info.Type.Kind() == reflect.Interface && rv.Kind() == reflect.Ptr { @@ -62,7 +62,7 @@ func (cdc *Codec) decodeReflectBinary(bz []byte, info *TypeInfo, // Handle override if a pointer to rv implements UnmarshalAmino. if info.IsAminoUnmarshaler { // First, decode repr instance from bytes. - rrv := reflect.New(info.AminoUnmarshalReprType) + rrv := reflect.New(info.AminoUnmarshalReprType).Elem() var rinfo *TypeInfo rinfo, err = cdc.getTypeInfoWlock(info.AminoUnmarshalReprType) if err != nil { diff --git a/decoder.go b/decoder.go index 43991be1..14f4e7c8 100644 --- a/decoder.go +++ b/decoder.go @@ -233,7 +233,6 @@ func decodeSeconds(bz *[]byte) (int64, int, error) { switch { case fieldNum == 1 && typ == Typ3Varint: slide(bz, &n, _n) - // var _n int sec, _n, err := DecodeUvarint(*bz) if slide(bz, &n, _n) && err != nil { return 0, n, err @@ -263,7 +262,6 @@ func decodeNanos(bz *[]byte, n *int) (int32, error) { } if fieldNum == 2 && typ == Typ3Varint { slide(bz, n, _n) - // var _n int nsec, _n, err := DecodeUvarint(*bz) if slide(bz, n, _n) && err != nil { return 0, err diff --git a/json-decode.go b/json-decode.go index 3933a27a..d6bc0ff1 100644 --- a/json-decode.go +++ b/json-decode.go @@ -70,7 +70,7 @@ func (cdc *Codec) decodeReflectJSON(bz []byte, info *TypeInfo, rv reflect.Value, // Handle override if a pointer to rv implements UnmarshalAmino. if info.IsAminoUnmarshaler { // First, decode repr instance from bytes. - rrv := reflect.New(info.AminoUnmarshalReprType) + rrv := reflect.New(info.AminoUnmarshalReprType).Elem() var rinfo *TypeInfo rinfo, err = cdc.getTypeInfoWlock(info.AminoUnmarshalReprType) if err != nil { diff --git a/repr_test.go b/repr_test.go index d26eb4f4..80af1efb 100644 --- a/repr_test.go +++ b/repr_test.go @@ -64,9 +64,7 @@ func TestMarshalAminoBinary(t *testing.T) { t.Logf("bz %#v", bz) var f2 Foo - fmt.Println(bz) err = cdc.UnmarshalBinaryLengthPrefixed(bz, &f2) - fmt.Println(f2, "me me") assert.NoError(t, err) assert.Equal(t, f, f2) @@ -82,7 +80,7 @@ func TestMarshalAminoJSON(t *testing.T) { cdc.RegisterConcrete(([]*Foo)(nil), "[]*Foo", nil) var f = Foo{ - A: "K", + a: "K", b: 2, c: []*Foo{nil, nil, nil}, D: "J",