From a0fd045ce6e26a89e2f5487fb7aa2234f947a9bf Mon Sep 17 00:00:00 2001 From: Brian Li Date: Sun, 8 Feb 2026 21:27:01 -0600 Subject: [PATCH] feat: add missing type resolver for uint[16,32,64] --- go/fory/type_resolver.go | 9 +++++++++ go/fory/type_test.go | 3 +++ 2 files changed, 12 insertions(+) diff --git a/go/fory/type_resolver.go b/go/fory/type_resolver.go index bd49a03e15..3363508edb 100644 --- a/go/fory/type_resolver.go +++ b/go/fory/type_resolver.go @@ -248,6 +248,9 @@ func newTypeResolver(fory *Fory) *TypeResolver { for _, t := range []reflect.Type{ boolType, byteType, + uint16Type, + uint32Type, + uint64Type, int8Type, int16Type, int32Type, @@ -1704,6 +1707,12 @@ func (r *TypeResolver) createSerializer(type_ reflect.Type, mapInStruct bool) (s case reflect.Uint8: // []byte uses byteSliceSerializer return byteSliceSerializer{}, nil + case reflect.Uint16: + return uint16SliceSerializer{}, nil + case reflect.Uint32: + return uint32SliceSerializer{}, nil + case reflect.Uint64: + return uint64SliceSerializer{}, nil case reflect.String: return stringSliceSerializer{}, nil } diff --git a/go/fory/type_test.go b/go/fory/type_test.go index bbb890be57..952a3882c9 100644 --- a/go/fory/type_test.go +++ b/go/fory/type_test.go @@ -43,6 +43,9 @@ func TestTypeResolver(t *testing.T) { "[]map[string][]map[string]*interface {}"}, {reflect.TypeOf((*A)(nil)), "*@example.A"}, {reflect.TypeOf((*A)(nil)).Elem(), "@example.A"}, + {reflect.TypeOf([]uint16{}), "[]uint16"}, + {reflect.TypeOf([]uint32{}), "[]uint32"}, + {reflect.TypeOf([]uint64{}), "[]uint64"}, {reflect.TypeOf((*[]map[string]int)(nil)), "*[]map[string]int"}, {reflect.TypeOf((*[]map[A]int)(nil)), "*[]map[@example.A]int"}, {reflect.TypeOf((*[]map[string]*A)(nil)), "*[]map[string]*@example.A"},