MCPcopy Index your code
hub / github.com/apache/fory / write_ref_or_null

Method write_ref_or_null

python/pyfory/resolver.py:62–76  ·  view source on GitHub ↗
(self, buffer, obj)

Source from the content-addressed store, hash-verified

60 self.written_objects = {}
61
62 def write_ref_or_null(self, buffer, obj):
63 if obj is None:
64 buffer.write_int8(NULL_FLAG)
65 return True
66 object_id = id(obj)
67 written_id = self.written_objects.get(object_id)
68 if written_id is not None:
69 buffer.write_int8(REF_FLAG)
70 buffer.write_var_uint32(written_id[0])
71 return True
72 written_id = len(self.written_objects)
73 # Hold the object to keep temporary nested values alive until reset.
74 self.written_objects[object_id] = (written_id, obj)
75 buffer.write_int8(REF_VALUE_FLAG)
76 return False
77
78 def write_ref_value_flag(self, buffer, obj):
79 assert obj is not None

Callers

nothing calls this directly

Calls 3

getMethod · 0.65
write_int8Method · 0.45
write_var_uint32Method · 0.45

Tested by

no test coverage detected