eaiovnaovbqoebvqoeavibavo B YI~dz0@sddddddgZdZddlmZdd lZdd lZdd lZdd lZdd l m Z dd l m Z m Z dZd Zd ZGdddejZdddZdddZddZd S)BZ2File BZ2CompressorBZ2Decompressoropencompress decompressz%Nadeem Vawda )rN)RLock)rrc@seZdZd(ddZddZedd Zd d Zd d ZddZ ddZ d)ddZ d*ddZ d+ddZ ddZd,ddZd-ddZd d!Zd"d#Zejfd$d%Zd&d'ZdS).rrN cCsPt|_d|_d|_t|_|dk r.tdtd|krBdksLnt d|dkr^d}t }nb|dkrzd }t }t ||_ nF|d krd }t }t ||_ n*|d krd }t }t ||_ nt d|ft|tttjfrt|||_d|_||_n.t|dst|dr||_||_ntd|jt krFtj|jttd}t||_nd|_dS)NFz)Use of 'buffering' argument is deprecatedr r z%compresslevel must be between 1 and 9)r rbr)wwbr)xxbr)aabrzInvalid mode: %rTreadwritez6filename must be a str, bytes, file or PathLike object)Ztrailing_errorr)r_lock_fp_closefp _MODE_CLOSED_modewarningswarnDeprecationWarning ValueError _MODE_READ _MODE_WRITEr _compressor isinstancestrbytesosPathLike _builtin_openhasattr TypeError _compressionZDecompressReaderrOSErrorioBufferedReader_buffer_pos)selffilenamemode buffering compresslevelZ mode_coderawr7(/opt/alt/python37/lib64/python3.7/bz2.py__init__'sL      zBZ2File.__init__cCs|j|jtkrdSz<|jtkr.|jn"|jtkrP|j|j d|_ Wdz|j rf|jWdd|_d|_ t|_d|_XXWdQRXdS)NF) rrrr r/closer!rrr"flushr)r1r7r7r8r:ls      z BZ2File.closecCs |jtkS)N)rr)r1r7r7r8closedszBZ2File.closedcCs||jS)N)_check_not_closedrfileno)r1r7r7r8r>szBZ2File.filenocCs|o|jS)N)readabler/seekable)r1r7r7r8r@szBZ2File.seekablecCs||jtkS)N)r=rr )r1r7r7r8r?szBZ2File.readablecCs||jtkS)N)r=rr!)r1r7r7r8writableszBZ2File.writablerc Cs&|j||j|SQRXdS)N)r_check_can_readr/peek)r1nr7r7r8rCsz BZ2File.peekc Cs&|j||j|SQRXdS)N)rrBr/r)r1sizer7r7r8rsz BZ2File.readc Cs4|j$||dkrtj}|j|SQRXdS)Nr)rrBr-DEFAULT_BUFFER_SIZEr/read1)r1rFr7r7r8rHs z BZ2File.read1c Cs&|j||j|SQRXdS)N)rrBr/readinto)r1br7r7r8rIszBZ2File.readintoc CsJt|ts$t|dstd|}|j||j|SQRXdS)N __index__zInteger argument expected) r#intr)r*rKrrBr/readline)r1rFr7r7r8rMs  zBZ2File.readlinec CsJt|ts$t|dstd|}|j||j|SQRXdS)NrKzInteger argument expected) r#rLr)r*rKrrBr/ readlines)r1rFr7r7r8rNs  zBZ2File.readlinesc CsL|j<||j|}|j||jt|7_t|SQRXdS)N)rZ_check_can_writer"rrrr0len)r1dataZ compressedr7r7r8rs   z BZ2File.writec Cs |jtj||SQRXdS)N)rr+ BaseStream writelines)r1seqr7r7r8rRszBZ2File.writelinesc Cs(|j||j||SQRXdS)N)rZ_check_can_seekr/seek)r1offsetwhencer7r7r8rTsz BZ2File.seekc Cs4|j$||jtkr$|jS|jSQRXdS)N)rr=rr r/tellr0)r1r7r7r8rWs   z BZ2File.tell)r Nr )r)rE)rE)rE)rE)__name__ __module__ __qualname__r9r:propertyr<r>r@r?rArCrrHrIrMrNrrRr-SEEK_SETrTrWr7r7r7r8rs" E     rr cCsd|kr d|krPtd|fn0|dk r0td|dk r@td|dk rPtd|dd}t|||d}d|krt||||S|SdS) NtrJzInvalid mode: %rz0Argument 'encoding' not supported in binary modez.Argument 'errors' not supported in binary modez/Argument 'newline' not supported in binary moder )r5)rreplacerr- TextIOWrapper)r2r3r5encodingerrorsnewlineZbz_modeZ binary_filer7r7r8rs cCst|}|||S)N)rrr;)rPr5compr7r7r8rFscCsjg}xZ|r^t}y||}Wntk r<|r6PnYnX|||jsVtd|j}qWd|S)NzACompressed data ended before the end-of-stream marker was reached)rrr,appendeofrZ unused_datajoin)rPresultsZdecompZresr7r7r8rQs  )rr NNN)r )__all__ __author__builtinsrr(r-r&rr+Z threadingrZ_bz2rrrr r!rQrrrr7r7r7r8s&    (