ó
    V•£h<!  ã                   óˆ   • 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  S SK	J
r
JrJrJrJrJrJrJrJr  S SKJr   " S S5      rg)é    N)Ú	FrameTypeÚTracebackType)ÚUnionÚIterable)	Ústyle_with_executing_nodeÚOptionsÚLineÚ	FrameInfoÚLINE_GAPÚVariableÚRepeatedFramesÚBlankLineRangeÚ
BlankLines)Úassert_c                   ón  • \ rS rSrSSSSSSSSSS	S
SSSSSSSSS.S jrS rS&SS.S jjrS&SS.S jjrSS.S jrS&S\	\
   4S jjrS&S\	\
   4S jjrS\	\\\4      S\	\
   4S jrS\S\
4S jrS\\\\4   S\	\
   4S jrS\S\
4S jrS\S\
4S jrS  rS\S\	\
   4S! jrS"\S\
4S# jrS\
4S$ jrS%rg)'Ú	Formatteré   NFTÚmonokaiz
bg:#005080Ú^z-->z(...)Ú:z{:4} | )ÚoptionsÚ	pygmentedÚshow_executing_nodeÚpygments_formatter_clsÚpygments_formatter_kwargsÚpygments_styleÚexecuting_node_modifierÚexecuting_node_underlineÚcurrent_line_indicatorÚline_gap_stringÚline_number_gap_stringÚline_number_format_stringÚshow_variablesÚuse_code_qualnameÚshow_linenosÚstrip_leading_indentÚhtmlÚchainÚcollapse_repeated_framesc                óP  • Uc
  [        5       nU(       aD  UR                  (       d3  U(       a  [        Xg5      nUc  SSKJn  U" SSU0U=(       d    0 D6Ul        X l        X0l        [        [        U5      S:H  [        S5      5        X€l
        U	=(       d    SU l        X l        X°l        XÀl        XÐl        Xðl        Xàl        UU l        UU l        UU l        Xl        UU l        U R                   (       d4  U R*                  R.                  [0        R2                  :X  a  [        S5      eg g )	Nr   )ÚTerminal256FormatterÚstyleé   z3executing_node_underline must be a single characterÚ z@BlankLines.SINGLE option can only be used when show_linenos=True© )r   Úpygments_formatterr   Úpygments.formatters.terminal256r+   r   r   r   ÚlenÚ
ValueErrorr   r   r    r!   r"   r#   r%   r$   r&   r'   r(   r   r)   Úblank_linesr   ÚSINGLE)Úselfr   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   s                       ÚR/home/mande/repo/quber/.venv/lib/python3.13/site-packages/stack_data/formatting.pyÚ__init__ÚFormatter.__init__   s  € ð, ‰?Ü“iˆGæ˜W×7×7Þ"Ü!:Ø"ó"�ð &Ñ-õ.ñ *@ñ *Ø$ð*à+×1¨rñ*ˆGÔ&ð
 #ŒØ#6Ô ÜÜÐ(Ó)¨QÑ.ÜÐLÓMô	
ð )AÔ%Ø&<×&BÀˆÔ#Ø.ÔØ&<Ô#Ø)BÔ&Ø,ÔØ(ÔØ!2ÔØ$8ˆÔ!ØˆŒ	ØˆŒ
ØŒØ(@ˆÔ%Ø× ×  T§\¡\×%=Ñ%=Ä×ARÑARÓ%RÜØRóð ð &SÐ ó    c                 ó(   ^ • U 4S jnU[         l        g )Nc                 ó(   >• TR                  U5        g ©N)Úprint_exception)Ú_etypeÚevalueÚ_tbr6   s      €r7   Ú
excepthookÚ&Formatter.set_hook.<locals>.excepthookN   s   ø€ Ø× Ñ  Õ(r:   )ÚsysrB   )r6   rB   s   ` r7   Úset_hookÚFormatter.set_hookM   s   ø€ õ	)ð $Œ�r:   ©Úfilec                óB   • U R                  U R                  U5      US9  g ©NrG   )Úprint_linesÚformat_exception)r6   ÚerH   s      r7   r>   ÚFormatter.print_exceptionS   s    € Ø×Ñ˜×.Ñ.¨qÓ1¸ÐÒ=r:   c                ó†   • Uc  [         R                  " 5       R                  nU R                  U R	                  U5      US9  g rJ   )ÚinspectÚcurrentframeÚf_backrK   Úformat_stack)r6   Úframe_or_tbrH   s      r7   Úprint_stackÚFormatter.print_stackV   s:   € ØÑÜ!×.Ò.Ó0×7Ñ7ˆKà×Ñ˜×*Ñ*¨;Ó7¸dÐÒCr:   c                óP   • Uc  [         R                  nU H  n[        X2SS9  M     g )Nr.   )rH   Úend)rD   ÚstderrÚprint)r6   ÚlinesrH   Úlines       r7   rK   ÚFormatter.print_lines\   s$   € Ø‰<Ü—:‘:ˆDÛˆDÜ�$ rÔ*ò r:   Úreturnc              #   ó>  #   • Uc  [         R                  " 5       S   nU R                  (       a–  UR                  b6  U R	                  UR                  5       S h  v•N   [
        R                  v •  OSUR                  bF  UR                  (       d5  U R	                  UR                  5       S h  v•N   [
        R                  v •  Sv •  U R                  UR                  5       S h  v•N   [
        R                  " [        U5      U5       S h  v•N   g  Nº Nh N1 N7f)Nr-   z#Traceback (most recent call last):
)rD   Úexc_infor(   Ú	__cause__rL   Ú	tracebackÚ_cause_messageÚ__context__Ú__suppress_context__Ú_context_messagerS   Ú__traceback__Úformat_exception_onlyÚtype)r6   rM   s     r7   rL   ÚFormatter.format_exceptionb   sÑ   é € Ø‰9Ü—’“˜qÑ!ˆAà�:�:Ø�{‰{Ñ&Ø×0Ñ0°·±Ó=×=Ð=Ü×.Ñ.Ó.Ø—-‘-Ñ+Ø×0×0Ø×0Ñ0°·±Ó?×?Ð?Ü×0Ñ0Ò0à4Ò4Ø×$Ñ$ Q§_¡_Ó5×5Ð5Ü×2Ò2´4¸³7¸AÓ>×>Ñ>ñ >ñ @ñ 	6Ù>ùsI   ‚ADÁDÁADÂ.DÂ/8DÃ'DÃ('DÄDÄDÄDÄDÄDc              #   óÖ   #   • Uc  [         R                  " 5       R                  nU R                  [        R
                  " UU R                  U R                  S95       S h  v•N   g  N7f)N)r)   )rP   rQ   rR   Úformat_stack_datar
   Ú
stack_datar   r)   )r6   rT   s     r7   rS   ÚFormatter.format_stacks   sX   é € ØÑÜ!×.Ò.Ó0×7Ñ7ˆKà×)Ñ)Ü× Ò ØØ—‘Ø)-×)FÑ)Fñó
÷ 	
ó 	
ùs   ‚AA)Á!A'Á"A)Ústackc              #   ó¨   #   • U HF  n[        U[        5      (       a  U R                  U5       S h  v•N   M3  U R                  U5      v •  MH     g  N7fr=   )Ú
isinstancer
   Úformat_frameÚformat_repeated_frames)r6   ro   Úitems      r7   rl   ÚFormatter.format_stack_data   sF   é € ó ˆDÜ˜$¤	×*Ñ*Ø×,Ñ,¨TÓ2×2Ò2à×1Ñ1°$Ó7Ô7ò	 á2ùs   ‚/A±A²AÚrepeated_framesc                 ó8   • SR                  UR                  5      $ )Nz&    [... skipping similar frames: {}]
)ÚformatÚdescription)r6   rv   s     r7   rs   Ú Formatter.format_repeated_framesˆ   s   € Ø8×?Ñ?Ø×'Ñ'ó
ð 	
r:   Úframec              #   ó  #   • [        U[        5      (       d  [        XR                  5      nU R                  U5      v •  UR                   Hy  n[        U[
        5      (       a  U R                  U5      v •  M-  [        U[        5      (       a  U R                  U5      v •  MW  [        U[        L 5        U R                  S-   v •  M{     U R                  (       a   U R                  U5       S h  v•N   g g  N! [         a     g f = f7f)NÚ
)rq   r
   r   Úformat_frame_headerr[   r	   Úformat_liner   Úformat_blank_lines_linenumbersr   r   r    r#   Úformat_variablesÚ	Exception)r6   r{   r\   s      r7   rr   ÚFormatter.format_frame�   sÖ   é € Ü˜%¤×+Ñ+Ü˜e§\¡\Ó2ˆEà×&Ñ& uÓ-Ò-à—K”KˆDÜ˜$¤×%Ñ%Ø×&Ñ& tÓ,Ô,Ü˜D¤.×1Ñ1Ø×9Ñ9¸$Ó?Ô?ä˜¤Ð(Ô)Ø×*Ñ*¨TÑ1Ô1ñ  ð ××ðØ×0Ñ0°Ó7×7Ñ7ð á7øÜó Ùðüs<   ‚CDÃC8 Ã/C6Ã0C8 Ã4DÃ6C8 Ã8
DÄDÄDÄDÚ
frame_infoc                 ó¤   • SR                  UU R                  (       a  UR                  R                  5       S9$ UR                  R
                  S9$ )NzC File "{frame_info.filename}", line {frame_info.lineno}, in {name}
)r„   Úname)rx   r$   Ú	executingÚcode_qualnameÚcodeÚco_name)r6   r„   s     r7   r~   ÚFormatter.format_frame_header¢   s\   € ØU×\Ñ\Ø!ð ×)×)ð ×$Ñ$×2Ñ2Ó4ð ]ð 
ð 	
ð
 —‘×'Ñ'ð ]ð 
ð 	
r:   r\   c                 ó²  • SnU R                   (       a<  UR                  (       a  U R                   nOS[        U R                   5      -  nUS-  nOSnU R                  (       a'  X R                  R                  UR                  5      -  nUnX!R                  U R                  U R                  U R                  S9S-   -  nU R                  (       a†  U R                  (       du  UR                   He  nUR                  UR                  -
  nUR                  UR                  -
  nXe:”  d  M<  USU[        U5      -   -  U R                   Xe-
  -  -   S-   -  nMg     U$ )Nr.   Ú ú   )r   Úescape_htmlr&   r}   )r   Ú
is_currentr2   r%   r"   rx   ÚlinenoÚrenderr   r'   r&   r   Úexecuting_node_rangesÚstartÚleading_indentrX   r   )r6   r\   ÚresultÚprefixÚ
line_ranger”   rX   s          r7   r   ÚFormatter.format_line¬   s;  € ØˆØ×&×&Ø��Ø×4Ñ4‘àœs 4×#>Ñ#>Ó?Ñ?�Ø�c‰M‰FàˆFà××Ø×4Ñ4×;Ñ;¸D¿K¹KÓHÑHˆFàˆà—+‘+Ø—n‘nØŸ	™	Ø!%×!:Ñ!:ð ð 
ð ñ	ñ 	ˆð ×#×#¨D¯N¯NØ"×8Ô8�
Ø"×(Ñ(¨4×+>Ñ+>Ñ>�Ø —n‘n t×':Ñ':Ñ:�ð •;ØØ 5¬3¨v«;Ñ#6Ñ7Ø"×;Ñ;¸s¹{ÑKñLà"ñ#ñ’Fñ 9ð ˆr:   c                 ó$  • U R                   (       a  S[        U R                   5      -  S-   nOSnUR                  UR                  :X  a*  X R                  R                  UR                  5      -   S-   $ USR                  U R                  5      -   $ )Nr�   rŽ   r}   z   {}
)r   r2   Úbegin_linenoÚ
end_linenor"   rx   r!   )r6   Ú
blank_liner–   s      r7   r€   Ú(Formatter.format_blank_lines_linenumbersÒ   s€   € Ø×&×&Øœ3˜t×:Ñ:Ó;Ñ;¸cÑA‰FàˆFØ×"Ñ" j×&;Ñ&;Ó;Ø×:Ñ:×AÑAÀ*×BYÑBYÓZÑZÐ]aÑaÐaØ˜	×(Ñ(¨×)DÑ)DÓEÑEÐEr:   c              #   ó”   #   • [        UR                  S S9 H  n U R                  U5      S-   v •  M     g ! [         a     M,  f = f7f)Nc                 ó   • U R                   $ r=   )r†   )Úvs    r7   Ú<lambda>Ú,Formatter.format_variables.<locals>.<lambda>Ý   s   € ¸a¿fºfr:   )Úkeyr}   )ÚsortedÚ	variablesÚformat_variabler‚   )r6   r„   Úvars      r7   r�   ÚFormatter.format_variablesÜ   sL   é € Ü˜*×.Ñ.Ñ4DÔEˆCðØ×*Ñ*¨3Ó/°$Ñ6Ô6ò Føô ó Úðüs%   ‚Aœ7²A·
AÁAÁAÁAr¨   c                 ól   • SR                  UR                  U R                  UR                  5      5      $ )Nz{} = {})rx   r†   Úformat_variable_valueÚvalue)r6   r¨   s     r7   r§   ÚFormatter.format_variableã   s.   € Ø×ÑØ�H‰HØ×&Ñ& s§y¡yÓ1ó
ð 	
r:   c                 ó   • [        U5      $ r=   )Úrepr)r6   r¬   s     r7   r«   ÚFormatter.format_variable_valueé   s   € Ü�E‹{Ðr:   )r(   r)   r   r   r'   r    r"   r!   r   r   r   r%   r#   r&   r$   r=   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r8   rE   r>   rU   rK   r   ÚstrrL   rS   r   r
   r   rl   rs   r   r   rr   r~   r	   r   r€   r�   r   r§   r«   Ú__static_attributes__r/   r:   r7   r   r      sP  † ð ØØ $Ø#'Ø&*Ø$Ø$0Ø%(Ø#(Ø#Ø#&Ø&/Ø Ø"ØØ!%ØØØ%)õ)>ò@$ð>¨dö >ðD°Dö Dð *.õ +ñ?¨(°3©-õ ?ñ"

°¸±õ 

ð8Ø! %¨	°>Ð(AÑ"BÑCð8à	�#‰ô8ð
°nð 
Èô 
ð
 %¨	°9¸mÐ(KÑ"Lð ÐQYÐZ]ÑQ^ô ð*
¨ið 
¸Cô 
ð# ð #¨ô #òLFð¨9ð ¸À#¹ô ð
 8ð 
°ô 
ð¨c÷ r:   r   )rP   rD   rb   Útypesr   r   Útypingr   r   rm   r   r   r	   r
   r   r   r   r   r   Ústack_data.utilsr   r   r/   r:   r7   Ú<module>rº      s5   ðÛ Û 
Û ß *ß "÷M÷ Mõ Må $÷^ò ^r:   