(self, obj)
| 787 | dispatch[float] = save_float |
| 788 | |
| 789 | def save_bytes(self, obj): |
| 790 | if self.proto < 3: |
| 791 | if not obj: # bytes object is empty |
| 792 | self.save_reduce(bytes, (), obj=obj) |
| 793 | else: |
| 794 | self.save_reduce(codecs.encode, |
| 795 | (str(obj, 'latin1'), 'latin1'), obj=obj) |
| 796 | return |
| 797 | n = len(obj) |
| 798 | if n <= 0xff: |
| 799 | self.write(SHORT_BINBYTES + pack("<B", n) + obj) |
| 800 | elif n > 0xffffffff and self.proto >= 4: |
| 801 | self._write_large_bytes(BINBYTES8 + pack("<Q", n), obj) |
| 802 | elif n >= self.framer._FRAME_SIZE_TARGET: |
| 803 | self._write_large_bytes(BINBYTES + pack("<I", n), obj) |
| 804 | else: |
| 805 | self.write(BINBYTES + pack("<I", n) + obj) |
| 806 | self.memoize(obj) |
| 807 | dispatch[bytes] = save_bytes |
| 808 | |
| 809 | def save_bytearray(self, obj): |
no test coverage detected