%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /snap/core18/current/usr/lib/python3.6/test/libregrtest/__pycache__/
Upload File :
Create Path :
Current File : //snap/core18/current/usr/lib/python3.6/test/libregrtest/__pycache__/refleak.cpython-36.pyc

3

/�$hP�@sdddlZddlZddlZddlZddlZddlmZddlmZdd�Z	dd�Z
dd	�Zd
d�ZdS)�N)�
isabstract)�supportc$s�ddl}ddl�ttd�s"td��tjdd�}|jj�}tj	j�}yddl
}Wntk
rhd}	YnX|jj�}	i}
xN�fdd��j
jD�D]4}t|�s�q�x$|j�|gD]}|jj�|
|<q�Wq�Wdd�td!d	�D���fd
d�}
|\}}}tjjtj|�}||}dg|}dg|}dg|}td|d
tjd�td|ddd|�tjdd�d}}}x�t|�D]z}|�t||||	|
�\}}}tddtjdd�||k�r�|
||�||<|
||�||<|
||�||<|}|}|}�qtWttjd�dd�}dd�}d}x�|d|f|d|f|d|fgD]t\}} }!||d�}|!|��r0d||| t|�f}"t|"tjdd�t|d ��}#t|"|#d�|#j�WdQRXd}�q0W|S)"z�Run a test multiple times, looking for reference leaks.

    Returns:
        False if the test didn't leak references; True if we detected refleaks.
    rN�gettotalrefcountz9Tracking reference leaks requires a debug build of Pythoncsg|]}t�j|��qS�)�getattr�abc)�.0�a)�collectionsr�./usr/lib/python3.6/test/libregrtest/refleak.py�
<listcomp>#szdash_R.<locals>.<listcomp>cSsi|]
}||�qSrr)r�valuerrr�
<dictcomp>-szdash_R.<locals>.<dictcomp>i�cs�j||�S)N)�
setdefault)r
)�int_poolrr�get_pooled_int.szdash_R.<locals>.get_pooled_intZ	beginningZrepetitions)�fileZ
1234567890�
�T)r�flush�.�)�endrrcSstdd�|D��S)Ncss|]}|dkVqdS)rNr)rZdeltarrr�	<genexpr>Ysz2dash_R.<locals>.check_rc_deltas.<locals>.<genexpr>)�all)�deltasrrr�check_rc_deltasLs
zdash_R.<locals>.check_rc_deltascSst|�S)N)�any)rrrr�check_fd_deltas[szdash_R.<locals>.check_fd_deltasFZ
referencesz
memory blockszfile descriptorsz%s leaked %s %s, sum=%sr	i���)�copyreg�collections.abc�hasattr�sys�	Exception�warnings�filters�dispatch_table�copy�path_importer_cache�	zipimport�ImportError�_zip_directory_cacher�__all__r�__subclasses__�
_abc_registry�range�os�path�joinrZSAVEDCWD�print�stderr�dash_R_cleanup�sum�openr)$Z
the_module�testZ
indirect_testZ
huntrleaksr�fs�ps�picr)�zdc�abcsr�objrZnwarmupZntrackedZfnameZrepcountZ	rc_deltasZalloc_deltasZ	fd_deltasZ	rc_beforeZalloc_beforeZ	fd_before�iZalloc_afterZrc_afterZfd_afterrrZfailedrZ	item_nameZchecker�msgZrefrepr)r
rr�dash_R
sx













rAc
sfddl}ddl}ddl�ddlm}|tjdd�<|jj�|jj	|�t
jj�t
jj	|�yddl}Wnt
k
r~YnX|jj�|jj	|�t
j��fdd��jjD�}	tt|	�}	dt
jkr�t
jd}
t|	�|
j|
j|
jg}	xN|	D]F}x@|j�|gD].}|j||��j�|_|jj�|jj��qWq�Wt�t
j }
t
j!}|j"�|
�|�t#j$�fS)Nr)�WeakSetcsg|]}t�j|��qSr)rr)rr	)r
rrr�sz"dash_R_cleanup.<locals>.<listcomp>�typing)%�gcrr �weakrefrBr$r%r&�clear�updater"r(r)r*r+�_clear_type_cacherr,�filterr�modules�list�ChainMap�CounterZDefaultDictr-�getr'r.�
_abc_cache�_abc_negative_cache�clear_caches�getallocatedblocksr�collectrZfd_count)r9r:r;r<r=rDrrBr)Zabs_classes�trr>Zfunc1Zfunc2r)r
rr5qs<







r5c[Cstddl}x tjj�D]}t|d�r|`qWx,tjtjtjtj	fD]}|dk	r@|j
�q@Wytjd}Wntk
rzYnX|jj
�tj�ytjd}Wntk
r�YnX|jj
�ytjd}Wntk
r�Yn
X|j�ytjd}Wntk
�rYn
X|j�ytjd}Wntk
�r:Yn
X|j�ytjd}Wntk
�rhYn
X|j�ytjd	}	Wntk
�r�YnX|	jj
�ytjd
}
Wntk
�r�Yn
X|
j�ytjd}Wntk
�r�YnXd|_ytjd}Wntk
�r Yn
X|j�ytjd
}
Wntk
�rNYnXx|
jD]}|��qXW|j�dS)Nr�__warningregistry__zdistutils.dir_util�	_strptimezurllib.parsezurllib.request�	linecache�	mimetypes�filecmp�struct�doctest�ctypesrC)rDr"rJ�valuesr!rU�stdoutr4�
__stdout__�
__stderr__r�KeyErrorZ
_path_createdrF�re�purgeZ_regex_cacheZclear_cacheZ
urlcleanup�
clearcacheZ_default_mime_types�_cacheZ_clearcacheZmasterZ_reset_cacheZ	_cleanupsrS)rD�mod�streamZdistutils_dir_utilrVZurllib_parseZurllib_requestrWrXrYrZr[r\rC�frrrrQ�s�



rQcCsRttd��}x td�D]}|||d�qWdd�td�D�ttdd��dS)N�rcSsg|]}t|��qSr)�chr)rr?rrrrszwarm_caches.<locals>.<listcomp>�i���)�bytesr/rK)�sr?rrr�warm_cachess
ro)
�errnor0rbr"r$�inspectrr8rrAr5rQrorrrr�<module>sg-b

Zerion Mini Shell 1.0