
     h;                       S r SSKJr  SSKrSSKrSSKrSSKrSSKrSSKJ	r	J
r
  SSKJrJrJr  SSKJr  SSKJrJrJrJrJrJrJrJrJrJr  \\   r\\   r\R>                  RA                  S5      r!\R>                  S	   r"\!c4  \R>                  S
   r#\R>                  S   r$\RJ                  (       a  SOSr&OS=r#=r$r&\'RQ                  S5      r) " S S\5      r*g)z#Raw data collector for coverage.py.    )annotationsN)	FrameType
ModuleType)AnyCallablecast)env)
TArcTFileDispositionTLineNoTracerTShouldStartContextFnTShouldTraceFn
TTraceDataTTraceFileDataTTraceFnTWarnFnRESUMERETURN_VALUEYIELD_VALUE
YIELD_FROM   coc                      \ rS rSrSr\R                  " 5       rSS jrSS jr	SS jr
 S         SS jjrSS jrSS	 jrSS
 jrSS jrSS jrSrg)PyTracer7   z-Python implementation of the raw data tracer.c                p   [        U R                  5      U l        U   SU l        U   U   S U l        S U l        U   U   U   S U l        S U l        SU l        S U l	        S U l
        SU l        / U l        S U l        SU l        SU l        SU l        ["        R$                  " [&        U SS5        U R(                  U l        g )NFr   	in_atexitT)next
tracer_idsid
trace_arcsshould_start_contextswitch_context	threadingcur_file_data	last_linecur_file_namecontextstarted_context
data_stackthreadstopped	_activityr   atexitregistersetattr_trace_cached_bound_method_traceselfs    o/root/racknerd_01/codex-conversation/amazon-q-terraform/.venv/lib/python3.13/site-packages/coverage/pytracer.py__init__PyTracer.__init__L   s    t' 	BF!CG -148"#)-#'$ Z\/3{D9 59KK'    c                    [        S U R                  R                  5        5       5      n[        U R                  5      nS[	        U 5      S SU SU S3$ )Nc              3  8   #    U  H  n[        U5      v   M     g 7fN)len).0vs     r7   	<genexpr>$PyTracer.__repr__.<locals>.<genexpr>z   s     8%7SVV%7s   z<PyTracer at z#xz: z data points in z files>)sumdatavaluesr>   r"   )r6   pointsfiless      r7   __repr__PyTracer.__repr__y   sN    8TYY%5%5%788DIIr$xm2fX5EeWGTTr:   c                \   [        SSSS9 nUR                  U SU R                   S[        U R                  5       S35         UR                  SR                  SR                  [        [        U5      5      5      5         UR                  S	5        S
S
S
5        g
! , (       d  f       g
= f)z3For hard-core logging of what this tracer is doing.z/tmp/debug_trace.txtazutf-8)encoding []z {}
N)openwriter"   r>   r,   formatr-   identr&   current_threadjoinmapstr)r6   markerargsfstacks        r7   logPyTracer.log~   s    (#@AGGvhay#doo*>)?qAB GGELL#c4.!9:; GGDM! A@@s   BB
B+Nc                z   [         UR                  R                  ;   a  gU R                  (       ao  [        R
                  " 5       U R                  :X  aL   [        R                  " S5         U R                  R                  5       u  U l        U l        U l        U l        gUS:X  GaX  U R(                  (       aW  U R*                  cJ  U R)                  U5      nUb3  X`l        SnU R,                  c   eU R-                  U R*                  5        OSnOSnXpl        SU l        U R                  R1                  U R                  U R                   U R"                  U45        UR                  R                  nXR                   :w  d  U(       a  Xl        U R2                  R5                  U5      n	U	c  U R7                  X5      n	XR2                  U'   SU l        U	R8                  (       am  U	R:                  n
U
c   eU R=                  5          XR>                  ;  a  [A        5       U R>                  U
'   U RC                  5         U R>                  U
   U l        O SUl"        OU R                  (       d  SUl"        [F        b,  UR                  RH                  URJ                  S-      nUS:H  nO[M        USS	5      S:  nU(       a(  UR                  RN                  * U l        U R                  $ UR                  U l         U R                  $ US
:X  a  U R                  b  UR                  nU RP                  (       a6  [S        [T        U R                  5      RW                  U R"                  U45        O)[S        [X        U R                  5      RW                  U5        Xl        U R                  $ US:X  Ga  U RP                  (       Ga"  U R                  (       Ga  UR                  RH                  nURJ                  n[F        bE  [[        U5      US-   :X  a  SnO[\        R^                  R`                  (       a  US-  nX   [F        :g  nOOX   [b        :X  a  SnO@X   [d        :X  a  SnO1[[        U5      U[f        -   ::  a  SnOX[f        -      [h        :X  a  SnOSnU(       aL  UR                  RN                  n[S        [T        U R                  5      RW                  U R"                  U* 45        U R                  R                  5       u  U l        U l        U l        U l        U R$                  (       a'  U R,                  c   eSU l        U R-                  S5        U R                  $ ! [&         aI    U R                  SUR                  R                  UR                  UR                  R                  5         gf = f! U RC                  5         f = f)z*The trace function passed to sys.settrace.Nr   zEmpty stack!callTF   f_lastir   linereturnr   )5	THIS_FILEf_codeco_filenamer.   sysgettracer4   r]   f_linenoco_namef_tracef_backsettracer,   popr'   r)   r(   r+   
IndexErrorr$   r*   r%   r/   appendshould_trace_cachegetshould_tracetracesource_filename	lock_datarD   setunlock_dataf_trace_linesr   co_coderb   getattrco_firstlinenor#   r   set_TArcaddset_TLineNor>   r	   
PYBEHAVIORlasti_is_yieldr   r   YIELD_FROM_OFFSETr   )r6   frameeventarglinenor[   context_mayber+   filenamedisp	tracenameoparg	real_callflinenocodelastireal_returnfirsts                     r7   r3   PyTracer._trace   s    000
 <<CLLNd.M.MM  LL
OO'') ]"D$6H\ 
 F?((T\\-A $ 9 9% @ ,#0L&*O..:::''5&+O"'#2  "DNOO""&&&&NN#	 ||//H---%-"..228<<,,X=D8<++H5%)":: $ 4 4I$000NN$+$II5365DIIi0((*)-9)=D&*/E'''&+# ! ,,U]]Q->?"aZ	$UIr:Q>	"',,"="=!=n ...k "'j ...g f_!!-#(>>??4#5#56::DNNG;TUd&8&89==gF!(T ...Q h4#5#5#5 ||++%4yEAI-&* >>88!QJE&*kV&;{l2&*3&+Te.?&??&*&778JF&+&*!LL77E4#5#56::DNNUF;ST ##% YD 2DNDDX ##**666###D)...O  "LL,,NNLL((	 z ((*s   ,3U &V( AV%$V%(V:c                    SU l         U R                  (       a,  U R                  c  U R                  R                  5       U l        [        R
                  " U R                  5        U R                  $ )zTStart this Tracer.

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

F)r.   r&   r-   rU   rh   rn   r4   r5   s    r7   startPyTracer.start8  sN     >>{{""nn;;=T445...r:   c                   [         R                  " 5       nSU l        U R                  (       aL  U R                  c   eU R                  R
                  U R                  R                  5       R
                  :w  a  g[        R                  =(       a    U R                  =(       a    USL =(       d    [        R                  nU R                  (       a=  U(       d5  XR                  :w  a%  U R                  SU< SU R                  < 3-   SS9  gggg)zStop this Tracer.TNz.Trace function changed, data is likely wrong: z != ztrace-changed)slug)rh   ri   r.   r&   r-   rT   rU   r	   PYPYr   METACOVwarnr4   )r6   tfsuppress_warnings      r7   stopPyTracer.stopF  s     \\^
 >>;;***{{  DNN$A$A$C$I$II
   HHFFB$JV3;;99-444		Dd4#B#B"EFG(   5 .9r:   c                    U R                   $ )zHas there been any activity?r/   r5   s    r7   activityPyTracer.activityg  s    ~~r:   c                    SU l         g)zReset the activity() flag.FNr   r5   s    r7   reset_activityPyTracer.reset_activityk  s	    r:   c                    g)z+Return a dictionary of statistics, or None.N r5   s    r7   	get_statsPyTracer.get_statso  s    r:   )r/   r4   r*   r'   r)   r,   r"   r   r(   r$   r+   r.   r%   r-   r&   r#   )rd   None)rd   rX   )rY   rX   rZ   r   rd   r   r=   )
r   r   r   rX   r   r   r   zTLineNo | Nonerd   zTTraceFn | None)rd   r   )rd   bool)rd   zdict[str, int] | None)__name__
__module____qualname____firstlineno____doc__	itertoolscountr!   r8   rH   r]   r3   r   r   r   r   r   __static_attributes__r   r:   r7   r   r   7   s    7$ "J+@ZU
2 "&d/d/ d/ 	d/
 d/ 
d/L/Br:   r   )+r   
__future__r   r0   disr   rh   r&   typesr   r   typingr   r   r   coverager	   coverage.typesr
   r   r   r   r   r   r   r   r   r   rx   r   r~   opmaprs   r   r   r   r   r   r   __file__rstripre   r   r   r:   r7   <module>r      s    * "  
  
  ' & &   " 'lt9
 
x	 yy(	>))M*K<(J XX1355K5*0
 OOD!	zv zr:   