
    fi                     T   d dl Z d dlZd dlmZ d dlmZmZ d dlmZ d dlm	Z	m
Z
 d dlmZ erd dlmZmZmZmZmZ d dlmZ d d	lmZmZ 	 d dlZn# e$ r  ed
          w xY w	 d dlZn# e$ r  ed          w xY w	 d dlZn# e$ r  ed          w xY w G d de          Zd ZdS )    N)
serializer)IntegrationDidNotEnableadd_global_event_processor)walk_exception_chainiter_stacks)TYPE_CHECKING)OptionalDictAnyTupleList)	FrameType)EventHintzexecuting is not installedzpure_eval is not installedzasttokens is not installedc                   (    e Zd ZdZed             ZdS )PureEvalIntegration	pure_evalc                  &    t           d             } d S )Nc                    t          j                                        t                    | S || S |                    dd           }|| S |                     dd           }|| S |                    dd           }|| S t          t          |          t          |                    D ]\  }\  }}}d |                    di                               dg           D             }t          t          |                    }	t          |          t          |	          k    rzt          ||	          D ]$\  }
}t          |j                  p|
d         |
d<   %| S )Nexc_info	exceptionvaluesc                 <    g | ]}|                     d           |S )function)get).0frames     q/var/www/html/Pagina-Ingenieria-Requisitos/venv/lib/python3.11/site-packages/sentry_sdk/integrations/pure_eval.py
<listcomp>zNPureEvalIntegration.setup_once.<locals>.add_executing_info.<locals>.<listcomp>D   s:     ! ! !yy,,!! ! !    
stacktraceframesvars)
sentry_sdk
get_clientget_integrationr   r   zipreversedr   listr	   lenpure_eval_frametb_frame)eventhintr   r   r   	_exc_type
_exc_valueexc_tbsentry_framestbssentry_frametbs               r    add_executing_infoz:PureEvalIntegration.setup_once.<locals>.add_executing_info)   s    $&&667JKKS|xx
D11H		+t44I ]]8T22F~>A  "6x"@"@? ?  :	:Iz6! !!*|R!@!@!D!DXr!R!R! ! !
 ;v..//}%%S11(+M3(?(?  $L"'44LV8L !(( Lr"   r   )r8   s    r    
setup_oncezPureEvalIntegration.setup_once%   s(     
$'	 '	 
$	#'	 '	 '	r"   N)__name__
__module____qualname__
identifierstaticmethodr9    r"   r    r   r   "   s2        J+ + \+ + +r"   r   c                 j  	 t           j                            |           }|j        si S |                    | j                  }|si S t          |          d         x}		 |j        }t          |t          j
        t          j        t          j        f          rn:t          j                            |           }|                    |          }	fd}|                                |                    |d           fd|d t&          j                 D             }t'          j        |d          S )Nr   Tc                     | \  }}d fd|D             }|rt          fd|D                       S t          fd|D                       \  }}| | fS )Nc                     | j         | j        fS N)lineno
col_offset)ns    r    startz1pure_eval_frame.<locals>.closeness.<locals>.startr   s    Hal++r"   c                 F    g | ]} |          j         j        k     |S r?   )
last_tokenend)r   noderG   stmts     r    r!   z6pure_eval_frame.<locals>.closeness.<locals>.<listcomp>v   s;     
 
 
uT{{T_000 000r"   c              3   .   K   | ]} |          V  d S rC   r?   r   rK   rG   s     r    	<genexpr>z5pure_eval_frame.<locals>.closeness.<locals>.<genexpr>}   s+      AAtuuT{{AAAAAAr"   c              3   .   K   | ]} |          V  d S rC   r?   rN   s     r    rO   z5pure_eval_frame.<locals>.closeness.<locals>.<genexpr>   s+      $C$CTUU4[[$C$C$C$C$C$Cr"   )maxmin)
expressionnodes_valuenodes_before_stmtrD   rE   rG   rL   s         @r    	closenessz"pure_eval_frame.<locals>.closenessj   s     #v	, 	, 	,
 
 
 
 

 
 

  	*AAAA/@AAAAAA
 "%$C$C$C$CU$C$C$C!C!CFJGj[))r"   )keyreversec                 N    i | ]!\  }}                     |d                    |"S )r   )get_text)r   rT   valueatoks      r    
<dictcomp>z#pure_eval_frame.<locals>.<dictcomp>   s?       E5 	eAh  r"   )is_vars)	executingSource	for_frametreestatements_at_linef_linenor+   parent
isinstanceastFunctionDefClassDefModuler   	Evaluator
from_frameinteresting_expressions_grouped	asttokenssortr   MAX_DATABAG_BREADTH	serialize)
r   source
statementsscope	evaluatorexpressionsrW   r%   r]   rL   s
           @@r    r-   r-   T   sU   ''..F; 	**5>::J 	
##A&&ED ecos|SZHII 	 #..u55I;;EBBK* * * * *8 DD111   '(H**H(HI  D d3333r"   )rh   r&   r   sentry_sdk.integrationsr   r   sentry_sdk.scoper   sentry_sdk.utilsr   r	   typingr
   r   r   r   r   r   typesr   sentry_sdk._typesr   r   r`   ImportErrorr   ro   r   r-   r?   r"   r    <module>r      s   



     ! ! ! ! ! ! = = = = = = = = 7 7 7 7 7 7 > > > > > > > >             .77777777777777--------5 5 5 5
,3
4
4455 5 5 5
,3
4
4455 5 5 5
,3
4
445/ / / / /+ / / /d94 94 94 94 94s$   
A A $A) )A:>B B