Your IP : 3.141.25.125


Current Path : /opt/alt/python36/lib64/python3.6/__pycache__/
Upload File :
Current File : //opt/alt/python36/lib64/python3.6/__pycache__/gzip.cpython-36.opt-2.pyc

3

��2anO�@s�ddlZddlZddlZddlZddlZddlZddlZddlZddddgZd\Z	Z
ZZZ
d\ZZdd
d�Zdd�ZGdd�d�ZGdd�dej�ZGdd�dej�Zddd�Zdd�Zdd�Zedkr�e�dS)�N�GzipFile�open�compress�
decompress������rb�	cCs�d|kr d|krPtd|f��n0|dk	r0td��|dk	r@td��|dk	rPtd��|jdd�}t|tttjf�r|t|||�}n,t|d�s�t|d	�r�td|||�}nt	d
��d|kr�t
j||||�S|SdS)N�t�bzInvalid mode: %rz0Argument 'encoding' not supported in binary modez.Argument 'errors' not supported in binary modez/Argument 'newline' not supported in binary mode��read�writez1filename must be a str or bytes object, or a file)�
ValueError�replace�
isinstance�str�bytes�os�PathLiker�hasattr�	TypeError�io�
TextIOWrapper)�filename�mode�
compresslevel�encoding�errors�newlineZgz_modeZbinary_file�r#�)/opt/alt/python36/lib64/python3.6/gzip.pyrs$cCs|jtjd|��dS)Nz<L)r�struct�pack)�output�valuer#r#r$�write32u@sr)c@s8eZdZd
dd�Zdd�Zddd�Zdd	�Zd
d�ZdS)�_PaddedFile�cCs ||_t|�|_||_d|_dS)Nr)�_buffer�len�_length�file�_read)�self�f�prependr#r#r$�__init__Js
z_PaddedFile.__init__cCs~|jdkr|jj|�S|j||jkrJ|j}|j|7_|j||j�S|j}d|_|j|d�|jj||j|�SdS)N)r0r/rr.r,)r1�sizerr#r#r$rPs
z_PaddedFile.readcCs>|jdkr||_n|jt|�8_dSt|j�|_d|_dS)Nr)r0r,r-r.)r1r3r#r#r$r3]s
z_PaddedFile.prependcCsd|_d|_|jj|�S)N)r0r,r/�seek)r1Zoffr#r#r$r6fsz_PaddedFile.seekcCsdS)NTr#)r1r#r#r$�seekableksz_PaddedFile.seekableN)r+)r+)�__name__�
__module__�__qualname__r4rr3r6r7r#r#r#r$r*Es


	r*c@s�eZdZdZd,dd�Zedd��Zedd��Zd	d
�Zdd�Z	d
d�Z
dd�Zd.dd�Zd0dd�Z
dd�Zedd��Zdd�Zejfdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zejfd(d)�Zd2d*d+�ZdS)3rNrcCs2|r"d|ksd|kr"tdj|���|r6d|kr6|d7}|dkrTtj||pJd�}|_|dkr|t|dd�}t|ttf�s�d}n
t	j
|�}|dkr�t|dd�}|jd	�r�t|_
t|�}tj|�|_||_nN|jd��rt|_
|j|�tj|tjtjtjd
�|_||_ntdj|���||_|j
tk�r.|j�dS)Nr
�UzInvalid mode: {!r}rr�namerr�r�w�a�xr)r>r?r@)r�format�builtinsr�	myfileobj�getattrrrrr�fspath�
startswith�READr�_GzipReaderr�BufferedReaderr,r<�WRITE�_init_write�zlibZcompressobjZDEFLATED�	MAX_WBITSZ
DEF_MEM_LEVELr�_write_mtime�fileobj�_write_gzip_header)r1rrrrO�mtime�rawr#r#r$r4{s>#


zGzipFile.__init__cCsBddl}|jdtd�|jtkr<|jdd�dkr<|jdS|jS)Nrzuse the name attributer�z.gz���)�warnings�warn�DeprecationWarningrrJr<)r1rUr#r#r$r�s

zGzipFile.filenamecCs
|jjjS)N)r,rR�_last_mtime)r1r#r#r$rQ�szGzipFile.mtimecCs.t|j�}d|dd�dtt|��dS)Nz<gzip r� �>���)�reprrO�hex�id)r1�sr#r#r$�__repr__�s
zGzipFile.__repr__cCs.||_tjd�|_d|_g|_d|_d|_dS)Nr+r)r<rL�crc32�crcr5Zwritebuf�bufsize�offset)r1rr#r#r$rK�szGzipFile._init_writecCs�|jjd�|jjd�y<tjj|j�}t|t�s<|jd�}|j	d�rR|dd�}Wnt
k
rld}YnXd}|rzt}|jjt|�jd��|j
}|dkr�tj�}t|jt|��|jjd�|jjd	�|r�|jj|d
�dS)Ns��zlatin-1s.gzrSr+r����rT)rOrr�path�basenamer<rr�encode�endswith�UnicodeEncodeError�FNAME�chrrN�timer)�int)r1Zfname�flagsrQr#r#r$rP�s,



zGzipFile._write_gzip_headercCs�|j�|jtkr&ddl}t|jd��|jdkr8td��t|t	�rLt
|�}nt|�}|j}|dkr�|jj
|jj|��|j|7_tj||j�|_|j|7_|S)Nrz$write() on read-only GzipFile objectz!write() on closed GzipFile object)�_check_not_closedrrJ�errno�OSError�EBADFrOrrrr-�
memoryview�nbytesrrr5rLrarbrd)r1�datartZlengthr#r#r$r�s 



zGzipFile.writercCs2|j�|jtkr&ddl}t|jd��|jj|�S)Nrz$read() on write-only GzipFile object)rsrrGrtrurvr,r)r1r5rtr#r#r$rs

z
GzipFile.readcCs@|j�|jtkr&ddl}t|jd��|dkr4tj}|jj	|�S)Nrz%read1() on write-only GzipFile object)
rsrrGrtrurvr�DEFAULT_BUFFER_SIZEr,�read1)r1r5rtr#r#r$r{s
zGzipFile.read1cCs2|j�|jtkr&ddl}t|jd��|jj|�S)Nrz$peek() on write-only GzipFile object)rsrrGrtrurvr,�peek)r1�nrtr#r#r$r|#s

z
GzipFile.peekcCs
|jdkS)N)rO)r1r#r#r$�closed*szGzipFile.closedcCs�|j}|dkrdSd|_zP|jtkrR|j|jj��t||j�t||jd@�n|jt	krf|j
j�Wd|j}|r�d|_|j�XdS)Nl��)
rOrrJrr�flushr)rbr5rGr,�closerC)r1rOrCr#r#r$r�.s

zGzipFile.closecCs4|j�|jtkr0|jj|jj|��|jj�dS)N)rsrrJrOrrr)r1Z	zlib_moder#r#r$rAs
zGzipFile.flushcCs
|jj�S)N)rO�fileno)r1r#r#r$r�HszGzipFile.filenocCs"|jtkrtd��|jjd�dS)NzCan't rewind in write moder)rrGrur,r6)r1r#r#r$�rewindPs
zGzipFile.rewindcCs
|jtkS)N)rrG)r1r#r#r$�readableWszGzipFile.readablecCs
|jtkS)N)rrJ)r1r#r#r$�writableZszGzipFile.writablecCsdS)NTr#)r1r#r#r$r7]szGzipFile.seekablecCs�|jtkr�|tjkr2|tjkr*|j|}ntd��||jkrDtd��||j}dd}xt|d�D]}|j	|�qdW|j	d|d�n |jt
kr�|j�|jj
||�S|jS)NzSeek from end not supportedzNegative seek in write moderhi)rrJr�SEEK_SET�SEEK_CURrdrru�rangerrGrsr,r6)r1rd�whence�count�chunk�ir#r#r$r6`s 





z
GzipFile.seekcCs|j�|jj|�S)N)rsr,�readline)r1r5r#r#r$r�tszGzipFile.readline)NNrNNr[)r[r[)r[r[)r[)r8r9r:rCr4�propertyrrQr`rKrPrrr{r|r~r�rLZZ_SYNC_FLUSHrr�r�r�r�r7rr�r6r�r#r#r#r$rns,
H


csZeZdZ�fdd�Zdd�Zdd�Zdd�Zdd
d�Zdd
�Zdd�Z	�fdd�Z
�ZS)rHcs,t�jt|�tjtjd�d|_d|_dS)N)ZwbitsT)�superr4r*rLZ
decompressobjrM�_new_memberrX)r1�fp)�	__class__r#r$r4zsz_GzipReader.__init__cCstjd�|_d|_dS)Nr+r)rLra�_crc�_stream_size)r1r#r#r$�
_init_read�sz_GzipReader._init_readcCsJ|jj|�}x8t|�|krD|jj|t|��}|s:td��||7}qW|S)NzACompressed file ended before the end-of-stream marker was reached)�_fprr-�EOFError)r1r}ryrr#r#r$�_read_exact�sz_GzipReader._read_exactcCs�|jjd�}|dkrdS|dkr,td|��tjd|jd��\}}|_|dkrVtd��|t@r|tjd	|jd��\}|j|�|t@r�x |jjd
�}|s�|dkr�Pq�W|t	@r�x |jjd
�}|s�|dkr�Pq�W|t
@r�|jd�dS)
Nrr+Fs�zNot a gzipped file (%r)z<BBIxxr	zUnknown compression methodz<HrrhT)r�rrur%�unpackr�rX�FEXTRArn�FCOMMENT�FHCRC)r1�magic�method�flagZ	extra_lenr_r#r#r$�_read_gzip_header�s0

z_GzipReader._read_gzip_headerrcCs�|dkr|j�S|sdSx�|jjr@|j�d|_|jf|j�|_|jrh|j�|j�sb|j	|_
dSd|_|jjt
j�}|jj||�}|jjdkr�|jj|jj�n|jjdkr�|jj|jj�|dkr�P|dkrtd��qW|j|�|j	t|�7_	|S)Nrr+TFzACompressed file ended before the end-of-stream marker was reached)�readallZ
_decompressor�eof�	_read_eofr�Z_decomp_factoryZ_decomp_argsr�r�Z_posZ_sizer�rrrzrZunconsumed_tailr3Zunused_datar��_add_read_datar-)r1r5�bufZ
uncompressr#r#r$r�s:

z_GzipReader.readcCs$tj||j�|_|jt|�|_dS)N)rLrar�r�r-)r1ryr#r#r$r��sz_GzipReader._add_read_datacCs�tjd|jd��\}}||jkr<tdt|�t|j�f��n||jd@krRtd��d}x|dkrn|jjd�}qXW|r�|jj	|�dS)Nz<IIr	zCRC check failed %s != %sl��z!Incorrect length of data producedrhr)
r%r�r�r�rur]r�r�rr3)r1raZisize�cr#r#r$r��s


z_GzipReader._read_eofcst�j�d|_dS)NT)r��_rewindr�)r1)r�r#r$r�s
z_GzipReader._rewindr[)r[)r8r9r:r4r�r�r�rr�r�r��
__classcell__r#r#)r�r$rHys!
3rHc	Cs4tj�}t|d|d��}|j|�WdQRX|j�S)N�wb)rOrr)r�BytesIOrr�getvalue)ryrr�r2r#r#r$rsc	Cs$ttj|�d��
}|j�SQRXdS)N)rO)rrr�r)ryr2r#r#r$rscCs>tjdd�}|o|ddk}|r.|dd�}|s8dg}�x�|D]�}|r�|dkrltddtjjd�}tjj}q�|d
d�d	kr�td
t|��q@t|d�}t	j|dd�d�}n>|dkr�tjj}tddtjjd�}nt	j|d�}t|d	d�}x |j
d�}|�s�P|j|�q�W|tjjk	�r"|j�|tjjk	r@|j�q@WdS)Nrrz-d�-rr)rrrOrSz.gzzfilename doesn't end in .gz:r�irTrT)
�sys�argvr�stdin�buffer�stdout�printr\rrBrrr�)�argsr�argr2�gr�r#r#r$�_tests<


r��__main__)rrrr	r
)rr)rrNNN)r)r%r�rprrLrBrZ_compression�__all__ZFTEXTr�r�rnr�rGrJrr)r*Z
BaseStreamrZDecompressReaderrHrrr�r8r#r#r#r$�<module>s* 
+)

	&

?>