Skip to content

Commit 06445ae

Browse files
committed
fix(python): return named registration metadata
1 parent 46494d1 commit 06445ae

3 files changed

Lines changed: 10 additions & 4 deletions

File tree

python/pyfory/_fory.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,7 @@ def register(
275275
>>> fory = Fory(xlang=False)
276276
>>> fory.register(Person)
277277
"""
278-
self.register_type(
278+
return self.register_type(
279279
cls,
280280
type_id=type_id,
281281
name=name,

python/pyfory/serialization.pyx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -906,7 +906,7 @@ cdef class Fory:
906906
name=None,
907907
serializer=None,
908908
):
909-
self.register_type(
909+
return self.register_type(
910910
cls,
911911
type_id=type_id,
912912
name=name,
@@ -921,7 +921,7 @@ cdef class Fory:
921921
name: str = None,
922922
serializer=None,
923923
):
924-
self.type_resolver.register_type(
924+
return self.type_resolver.register_type(
925925
cls,
926926
type_id=type_id,
927927
name=name,
@@ -936,7 +936,7 @@ cdef class Fory:
936936
name: str = None,
937937
serializer=None,
938938
):
939-
self.type_resolver.register_union(
939+
return self.type_resolver.register_union(
940940
cls,
941941
type_id=type_id,
942942
name=name,

python/pyfory/tests/test_serializer.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -701,14 +701,20 @@ class NamedType:
701701
class LocalNameType:
702702
pass
703703

704+
class AliasNameType:
705+
pass
706+
704707
fory = Fory(xlang=True)
705708
namespaced_info = fory.register_type(NamedType, name="example.NamedType")
706709
local_info = fory.register_type(LocalNameType, name="LocalNameType")
710+
alias_info = fory.register(AliasNameType, name="example.AliasNameType")
707711

708712
assert namespaced_info.decode_namespace() == "example"
709713
assert namespaced_info.decode_typename() == "NamedType"
710714
assert local_info.decode_namespace() == ""
711715
assert local_info.decode_typename() == "LocalNameType"
716+
assert alias_info.decode_namespace() == "example"
717+
assert alias_info.decode_typename() == "AliasNameType"
712718

713719

714720
def test_register_type_name_invalid():

0 commit comments

Comments
 (0)