Your IP : 216.73.216.213


Current Path : /opt/alt/python37/lib64/python3.7/site-packages/coverage/__pycache__/
Upload File :
Current File : //opt/alt/python37/lib64/python3.7/site-packages/coverage/__pycache__/pytracer.cpython-37.pyc

B

E�W��@sLdZddlZddlZddlmZejdZejr8ee�ZGdd�de	�Z
dS)z#Raw data collector for coverage.py.�N)�env�YIELD_VALUEc@s@eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dS)�PyTracerz-Python implementation of the raw data tracer.cCsTd|_d|_d|_d|_d|_d|_g|_dg|_g|_d|_	d|_
d|_d|_dS)NFr)
�data�
trace_arcs�should_trace�should_trace_cache�warn�	threading�
cur_file_dict�	last_line�
data_stack�
last_exc_back�last_exc_firstlineno�thread�stopped)�self�r�D/opt/alt/python37/lib64/python3.7/site-packages/coverage/pytracer.py�__init__$szPyTracer.__init__cCs,d�t|�tdd�|j��D��t|j��S)Nz.<PyTracer at 0x{0:0x}: {1} lines in {2} files>css|]}t|�VqdS)N)�len)�.0�vrrr�	<genexpr>:sz$PyTracer.__repr__.<locals>.<genexpr>)�format�id�sumr�valuesr)rrrr�__repr__7szPyTracer.__repr__cCs�|jr
dS|jrV||jkrP|jr>|jr>|j|jf}d|j|<|j��\|_|_d|_|dkr�|j�|j|jf�|j	j
}|j�|�}|dkr�|�
||�}||j|<d|_|jr�|j}||jkr�i|j|<|j||_|jdkr�|j	j|_n|j|_n�|dk�r@|jdk	�r�|j}|j�r.d|j|j|f<n
d|j|<||_n||dk�r�|j�r�|j�r�|j	j|j}	|	tk�r�|j	j}
d|j|j|
f<|j��\|_|_n|dk�r�|j|_|j	j|_|jS)z*The trace function passed to sys.settrace.N�callr�line�return�	exception)rrrrrrr
�pop�append�f_code�co_filenamer�getr�traceZsource_filenamer�f_lasti�co_firstlineno�f_lineno�co_coder�f_back�_trace)r�frame�eventZ
arg_unused�pair�filenameZdispZ	tracename�lineno�bytecode�firstrrrr.>sV












zPyTracer._tracecCs*|jr|j��|_t�|j�d|_|jS)zdStart this Tracer.

        Return a Python function suitable for use with sys.settrace().

        F)r
�
currentThreadr�sys�settracer.r)rrrr�start}s
zPyTracer.startcCs^d|_|jr$|jj|j��jkr$dS|jrPt��|jkrPd}|�|t��f�t�	d�dS)zStop this Tracer.TNz7Trace function changed, measurement is likely wrong: %r)
rr
r�identr6r	r7�gettracer.r8)r�msgrrr�stop�sz
PyTracer.stopcCsdS)z+Return a dictionary of statistics, or None.Nr)rrrr�	get_stats�szPyTracer.get_statsN)
�__name__�
__module__�__qualname__�__doc__rrr.r9r=r>rrrrrs?r)rB�disr7�coverager�opmapr�PY2�chr�objectrrrrr�<module>s