o
    Á¿i.  ã                   @   sŒ   d dl Z d dlZd dlmZ d dlmZ d dlmZ d dlmZ d dl	m
Z
 ejdd… dks1J ‚d	ed
edededeee
f f
dd„ZdS )é    N)ÚCodeType)ÚHookType)ÚInjectionContext)Úinject_invocation)ÚCoverageLinesé   )é   é
   ÚcodeÚhookÚpathÚpackageÚreturnc           	      C   sB   t | |dd„ ƒ}t|||ƒ\}}tƒ }|D ]}| |¡ q||fS )Nc                 S   s   dd„ t  | j¡D ƒS )Nc                 S   s   g | ]\}}|‘qS © r   )Ú.0ÚoÚ_r   r   úd/home/ubuntu/.local/lib/python3.10/site-packages/ddtrace/internal/coverage/instrumentation_py3_10.pyÚ
<listcomp>   s    z:instrument_all_lines.<locals>.<lambda>.<locals>.<listcomp>)ÚdisÚfindlinestartsÚoriginal_code)Ú_sr   r   r   Ú<lambda>   s    z&instrument_all_lines.<locals>.<lambda>)r   r   r   Úadd)	r
   r   r   r   Úinjection_contextÚnew_codeÚlinesÚcoverage_linesÚliner   r   r   Úinstrument_all_lines   s   r    )r   ÚsysÚtypesr   Ú#ddtrace.internal.bytecode_injectionr   Ú(ddtrace.internal.bytecode_injection.corer   r   Ú/ddtrace.internal.test_visibility.coverage_linesr   Úversion_infoÚstrÚtupler    r   r   r   r   Ú<module>   s    *