def serialize(self, field_bytes): assert len(self.relocation_rules) == 0, \ 'Cannot serialize a MemoryDict with active segment relocation rules.' return b''.join( RelocatableValue.to_bytes(addr, ADDR_SIZE_IN_BYTES, 'little') + RelocatableValue.to_bytes(value, field_bytes, 'little') for addr, value in self.items())
def test_relocatable_value_serialization(byte_order, n_bytes): for num in [19, RelocatableValue(2, 5)]: assert RelocatableValue.from_bytes( RelocatableValue.to_bytes(num, n_bytes, byte_order), byte_order) == num
def serialize(self, field_bytes): return b''.join( RelocatableValue.to_bytes(addr, ADDR_SIZE_IN_BYTES, 'little') + RelocatableValue.to_bytes(value, field_bytes, 'little') for addr, value in self.items())