a
´i¯3 ã @ s g d ¢Z ddlZddlZddlZddlT ddlmZmZ ddlZdZdZ dZ
G dd„ dejƒZddd
ddddddœdd
„Z
ed
ddfdd„Zeddfdd„ZdS ))$Ú
CHECK_NONEÚCHECK_CRC32ÚCHECK_CRC64ÚCHECK_SHA256ÚCHECK_ID_MAXÚ
CHECK_UNKNOWNÚFILTER_LZMA1ÚFILTER_LZMA2ÚFILTER_DELTAÚ
FILTER_X86ÚFILTER_IA64Ú
FILTER_ARMÚFILTER_ARMTHUMBÚFILTER_POWERPCÚFILTER_SPARCÚFORMAT_AUTOÚ FORMAT_XZÚFORMAT_ALONEÚ
FORMAT_RAWÚMF_HC3ÚMF_HC4ÚMF_BT2ÚMF_BT3ÚMF_BT4Ú MODE_FASTÚMODE_NORMALÚPRESET_DEFAULTÚPRESET_EXTREMEÚLZMACompressorÚLZMADecompressorÚLZMAFileÚ LZMAErrorÚopenÚcompressÚ
decompressÚis_check_supportedé N)Ú*)Ú_encode_filter_propertiesÚ_decode_filter_propertiesé é c @ sœ e Zd Zd!dddddœdd„Zdd„ Zed d
„ ƒZdd„ Zd
d„ Zdd„ Z dd„ Z
d"dd„Zd#dd„Zd$dd„Z
d%dd„Zdd„ Zejfdd„Zdd „ ZdS )&r NÚréÿÿÿÿ©ÚformatÚcheckÚpresetÚfiltersc C s& d | _ d| _t| _|dv rL|dkr*tdƒ‚|d ur:tdƒ‚|d u rFt}t}n@|dv r~|d u r`t}t}t ||||d�| _
d| _ntd |¡ƒ‚t
|tttjfƒrÊd
|vr®|d
7 }t ||¡| _ d| _|| _n*t|dƒsÞt|d
ƒrì|| _ || _ntdƒ‚| jtk�r"tj| j tt||d�}t |¡| _d S )NF)r+ Úrbr, zACannot specify an integrity check when opening a file for readingzICannot specify a preset compression level when opening a file for reading)ÚwÚwbÚaÚabÚxÚxbr- r% zInvalid mode: {!r}ÚbTÚreadÚwritez6filename must be a str, bytes, file or PathLike object)Útrailing_errorr. r1 )Ú_fpÚ_closefpÚ_MODE_CLOSEDÚ_modeÚ
ValueErrorr Ú
_MODE_READr Ú_MODE_WRITEr Ú_compressorÚ_posr. Ú
isinstanceÚstrÚbytesÚosÚPathLikeÚbuiltinsr! ÚhasattrÚ TypeErrorÚ_compressionÚDecompressReaderr r ÚioÚBufferedReaderÚ_buffer) ÚselfÚfilenameÚmoder. r/ r0 r1 Ú mode_codeÚraw© rX ú/usr/lib64/python3.9/lzma.pyÚ__init__1 sF ,ÿ
ÿzLZMAFile.__init__c C sÐ | j tkrd S z~| j tkr,| j ¡ d | _n"| j tkrN| j | j ¡ ¡ d | _W z&| j
rb| j ¡ W d | _d| _
t| _ qÌd | _d| _
t| _ 0 n>z&| j
r | j ¡ W d | _d| _
t| _ nd | _d| _
t| _ 0 0 d S )NF)r@ r? rB rR ÚcloserC r= r; rD Úflushr> ©rS rX rX rY r[ † s6
þ
úþzLZMAFile.closec C s
| j tkS ©N)r@ r? r] rX rX rY Úclosedž s zLZMAFile.closedc C s | ¡ | j ¡ S r^ )Ú_check_not_closedr= Úfilenor] rX rX rY ra £ s zLZMAFile.filenoc C s | ¡ o| j ¡ S r^ )ÚreadablerR Úseekabler] rX rX rY rc ¨ s zLZMAFile.seekablec C s | ¡ | jtkS r^ )r` r@ rB r] rX rX rY rb ¬ s zLZMAFile.readablec C s | ¡ | jtkS r^ )r` r@ rC r] rX rX rY Úwritable± s zLZMAFile.writablec C s | ¡ | j |¡S r^ )Ú_check_can_readrR Úpeek©rS ÚsizerX rX rY rf ¶ s z
LZMAFile.peekc C s | ¡ | j |¡S r^ )re rR r: rg rX rX rY r: Á s z
LZMAFile.readc C s" | ¡ |dk rtj}| j |¡S )Nr% )re rP ÚDEFAULT_BUFFER_SIZErR Úread1rg rX rX rY rj Ê s zLZMAFile.read1c C s | ¡ | j |¡S r^ )re rR Úreadlinerg rX rX rY rk Ö s zLZMAFile.readlinec C sX | ¡ t|ttfƒr t|ƒ}nt|ƒ}|j}| j |¡}| j
|¡ | j|7 _|S r^ )Ú_check_can_writerF rH Ú bytearrayÚlenÚ
memoryviewÚnbytesrD r" r= r; rE )rS ÚdataÚlengthÚ
compressedrX rX rY r; à s
zLZMAFile.writec C s | ¡ | j ||¡S r^ )Ú_check_can_seekrR Úseek)rS ÚoffsetÚwhencerX rX rY ru õ s z
LZMAFile.seekc C s" | ¡ | jtkr| j ¡ S | jS r^ )r` r@ rB rR ÚtellrE r] rX rX rY rx s
z
LZMAFile.tell)Nr+ )r, )r, )r, )r, )Ú__name__Ú
__module__Ú__qualname__rZ r[ Úpropertyr_ ra rc rb rd rf r: rj rk r; rP ÚSEEK_SETru rx rX rX rX rY r &