| 749 | |
| 750 | |
| 751 | class LZMACompressor: |
| 752 | |
| 753 | def __init__(self): |
| 754 | self._comp = None |
| 755 | |
| 756 | def _init(self): |
| 757 | props = lzma._encode_filter_properties({'id': lzma.FILTER_LZMA1}) |
| 758 | self._comp = lzma.LZMACompressor(lzma.FORMAT_RAW, filters=[ |
| 759 | lzma._decode_filter_properties(lzma.FILTER_LZMA1, props) |
| 760 | ]) |
| 761 | return struct.pack('<BBH', 9, 4, len(props)) + props |
| 762 | |
| 763 | def compress(self, data): |
| 764 | if self._comp is None: |
| 765 | return self._init() + self._comp.compress(data) |
| 766 | return self._comp.compress(data) |
| 767 | |
| 768 | def flush(self): |
| 769 | if self._comp is None: |
| 770 | return self._init() + self._comp.flush() |
| 771 | return self._comp.flush() |
| 772 | |
| 773 | |
| 774 | class LZMADecompressor: |
no outgoing calls
searching dependent graphs…