(self, write_context, value)
| 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() |
nothing calls this directly
no test coverage detected