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

Method write

python/pyfory/meta/typedef.py:388–404  ·  view source on GitHub ↗
(self, buffer: Buffer, write_flags: bool = True)

Source from the content-addressed store, hash-verified

386 self.tracking_ref_override = None
387
388 def write(self, buffer: Buffer, write_flags: bool = True):
389 xtype_id = self.type_id
390 if write_flags:
391 xtype_id = xtype_id << 2
392 if self.is_nullable:
393 xtype_id |= 0b10
394 if self.is_tracking_ref:
395 xtype_id |= 0b1
396 buffer.write_var_uint32(xtype_id)
397 else:
398 buffer.write_uint8(xtype_id)
399 # Handle nested types
400 if self.type_id in [TypeId.LIST, TypeId.SET]:
401 self.element_type.write(buffer, True)
402 elif self.type_id == TypeId.MAP:
403 self.key_type.write(buffer, True)
404 self.value_type.write(buffer, True)
405
406 @classmethod
407 def read(cls, buffer: Buffer, resolver):

Callers

nothing calls this directly

Calls 3

writeMethod · 0.65
write_var_uint32Method · 0.45
write_uint8Method · 0.45

Tested by

no test coverage detected