MCPcopy Create free account
hub / github.com/apache/fory / write

Method write

python/pyfory/_serializer.py:290–302  ·  view source on GitHub ↗
(self, write_context, value)

Source from the content-addressed store, hash-verified

288 self.need_to_write_ref = False
289
290 def write(self, write_context, value):
291 if type(value) is not self.wrapper_type:
292 raise TypeError(f"{self.wrapper_type.__name__} serializer requires {self.wrapper_type.__name__}, got {type(value)!r}")
293 safe = value
294 buffer = safe.to_buffer()
295 itemsize = 1 if isinstance(buffer, (bytes, bytearray)) else buffer.itemsize
296 write_context.write_var_uint32(len(buffer) * itemsize)
297 if itemsize == 1 or is_little_endian:
298 write_context.write_buffer(buffer)
299 else:
300 swapped = array.array(buffer.typecode, buffer)
301 swapped.byteswap()
302 write_context.write_buffer(swapped)
303
304 def read(self, read_context):
305 byte_size = read_context.read_var_uint32()

Callers

nothing calls this directly

Calls 2

write_var_uint32Method · 0.45
arrayMethod · 0.45

Tested by

no test coverage detected