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

Method _serialize

python/pyfory/_fory.py:469–489  ·  view source on GitHub ↗
(
        self,
        obj,
        buffer: Buffer = None,
        buffer_callback=None,
        unsupported_callback=None,
    )

Source from the content-addressed store, hash-verified

467 self.reset_write()
468
469 def _serialize(
470 self,
471 obj,
472 buffer: Buffer = None,
473 buffer_callback=None,
474 unsupported_callback=None,
475 ) -> Buffer:
476 if buffer is None:
477 self.buffer.set_writer_index(0)
478 buffer = self.buffer
479 write_context = self.write_context
480 write_context.prepare(buffer, buffer_callback=buffer_callback, unsupported_callback=unsupported_callback)
481 mask_index = buffer.get_writer_index()
482 buffer.grow(1)
483 buffer.set_writer_index(mask_index + 1)
484 bitmap = 1 if self.xlang else 0
485 if buffer_callback is not None:
486 bitmap |= 2
487 buffer.put_int8(mask_index, bitmap)
488 write_context.write_ref(obj)
489 return buffer
490
491 def enter_flush_barrier(self):
492 self.write_context.enter_flush_barrier()

Callers 2

dumpMethod · 0.95
serializeMethod · 0.95

Calls 3

write_refMethod · 0.80
growMethod · 0.65
prepareMethod · 0.45

Tested by

no test coverage detected