
    Mhp                    X    d dl mZ d dlZd dlZd dlZd dlZddlmZ  G d d          ZdS )    )annotationsN   )Requestc                  \    e Zd Z	 	 dddZddZddZ	 	 	 dd dZddZddZ	 	 	 dd dZ	dS )!TraceNnamestrloggerlogging.LoggerrequestRequest | Nonekwargsdict[str, typing.Any] | NonereturnNonec                X   || _         || _        |d n|j                            d          | _        | j                            t          j                  | _        |pi | _	        d | _
        | j        p| j        d u| _        | j        j                             d          d         | _        d S )Ntrace.)r   r
   
extensionsgettrace_extensionisEnabledForloggingDEBUGdebugr   return_valueshould_tracesplitprefix)selfr   r
   r   r   s        O/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/httpcore/_trace.py__init__zTrace.__init__   s     	ODD);)?)?)H)H 	 [--gm<<
l(, JJ$*>d*Jk&,,S11"5    infodict[str, typing.Any]c                v   | j         E| j         d| }|                      ||          }t          j        |          rt	          d          | j        re|rd|v r|d         |}n8d                    d |                                D                       }| d| }| j                            |           d S d S )Nr   zIf you are using a synchronous interface, the callback of the `trace` extension should be a normal function instead of an asynchronous function.r    c                "    g | ]\  }}| d |S = .0keyvalues      r"   
<listcomp>zTrace.trace.<locals>.<listcomp>-   *     S S S
UC!3!3%!3!3 S S Sr$   	r   r    inspectiscoroutine	TypeErrorr   joinitemsr
   )r!   r   r%   prefix_and_nameretmessageargss          r"   r   zTrace.trace   s    +!%55t55O&&==C"3'' P   : 	' +>T11d>6J6Rxx S Sdjjll S S STT!**D**Kg&&&&&	' 	'r$   c                ^    | j         r%| j        }|                     | j         d|           | S Nz.started)r   r   r   r   r!   r%   s     r"   	__enter__zTrace.__enter__1   s8     	5;DJJ$)---t444r$   exc_typetype[BaseException] | None	exc_valueBaseException | None	tracebacktypes.TracebackType | Nonec                    | j         rO|)d| j        i}|                     | j         d|           d S d|i}|                     | j         d|           d S d S Nr   z	.complete	exceptionz.failed)r   r   r   r   r!   rA   rC   rE   r%   s        r"   __exit__zTrace.__exit__7   s      	8 &(9:

di222D99999#Y/

di000$77777	8 	8r$   c                  K   | j         M| j         d| }|                      ||          }t          j        |          st	          d          | d {V  | j        re|rd|v r|d         |}n8d                    d |                                D                       }| d| }| j                            |           d S d S )Nr   zIf you're using an asynchronous interface, the callback of the `trace` extension should be an asynchronous function rather than a normal function.r   r(   c                "    g | ]\  }}| d |S r*   r,   r-   s      r"   r1   z Trace.atrace.<locals>.<listcomp>U   r2   r$   r3   )r!   r   r%   r9   coror;   r<   s          r"   atracezTrace.atraceE   s     +!%55t55O''>>D&t,, Q  
 JJJJJJJ: 	' +>T11d>6J6Rxx S Sdjjll S S STT!**D**Kg&&&&&	' 	'r$   c                n   K   | j         r+| j        }|                     | j         d|           d {V  | S r>   )r   r   rO   r   r?   s     r"   
__aenter__zTrace.__aenter__Y   sN       	<;D++444d;;;;;;;;;r$   c                   K   | j         r[|/d| j        i}|                     | j         d|           d {V  d S d|i}|                     | j         d|           d {V  d S d S rH   )r   r   rO   r   rJ   s        r"   	__aexit__zTrace.__aexit___   s        	? &(9:kkTY"9"9"94@@@@@@@@@@@#Y/kkTY"7"7"7>>>>>>>>>>>	? 	?r$   )NN)
r   r	   r
   r   r   r   r   r   r   r   )r   r	   r%   r&   r   r   )r   r   )NNN)rA   rB   rC   rD   rE   rF   r   r   )
__name__
__module____qualname__r#   r   r@   rK   rO   rQ   rS   r,   r$   r"   r   r      s        
 #'/36 6 6 6 6$' ' ' '&    04*.04	8 8 8 8 8' ' ' '(    04*.04	? ? ? ? ? ? ?r$   r   )	
__future__r   r4   r   typestyping_modelsr   r   r,   r$   r"   <module>r[      s    " " " " " "          `? `? `? `? `? `? `? `? `? `?r$   