
    5 f              
      `   d Z ddlmZ ddlZddlZddlZddlmZ ddlmZ ddlm	Z	 erddl
mZ  ed          Z e	d	          Z G d
 de          Zej        ej        ej        ej        ej        ej        ej        ej        ej        d	Z G d d          Z e            Zej        ZddZdS )z1create errno-specific classes for IO or os calls.    )annotationsN)Callable)TYPE_CHECKING)TypeVar)	ParamSpecPRc                      e Zd ZddZddZdS )Errorreturnstrc                    d                     | j        j        | j        j        | j        j        d                    t          t          | j                                      S )Nz{}.{} {!r}: {}  )	format	__class__
__module____name____doc__joinmapr   args)selfs    G/var/www/equiseq/venv/lib/python3.11/site-packages/_pytest/_py/error.py__repr__zError.__repr__   sM     ''N%N#N"HHSdi(())	
 
 	
    c           	         d                     | j        j        d                    t	          t
          | j                                      }|S )Nz[{}]: {}r   )r   r   r   r   r   r   r   )r   ss     r   __str__zError.__str__   sA    N"HHSdi(())
 
 r   N)r   r   )r   r   __qualname__r   r    r   r   r   r      s<        
 
 
 
     r   r   )	                     i     c                  :    e Zd ZU dZi Zded<   ddZddZddZdS )
ErrorMakerzlazily provides Exception classes for each possible POSIX errno
    (as defined per the 'errno' module).  All such instances
    subclass EnvironmentError.
    zdict[int, type[Error]]_errno2classnamer   r   type[Error]c                    |d         dk    rt          |          t          t          |          }|                     |          }t	          | ||           |S )Nr   _)AttributeErrorgetattrerrno_geterrnoclasssetattr)r   r,   enoclss       r   __getattr__zErrorMaker.__getattr__:   sV    7c>> &&&eT""!!#&&dC   
r   r5   intc           	         	 | j         |         S # t          $ r_ t          j                            |d|fz            }t          |t          fdt          j        |          d          }|| j         |<   |cY S w xY w)NzUnknownErrno%dzpy.error)r   r   )	r+   KeyErrorr2   	errorcodegettyper   osstrerror)r   r5   clsnameerrorclss       r   r3   zErrorMaker._geterrnoclassB   s    
	$S)) 	 	 	o))#/?3&/HIIG)bk#6F6FGG H
 &.Dc"OOO	s    A&A87A8funcCallable[P, R]r   P.argskwargsP.kwargsr	   c                V   d}	  ||i |S # t           $ r  t          $ r}t          |d          s |j        }t          j        dk    r2	 |                     t          |                   }n%# t          $ r |w xY w|                     |          } ||j	         |          d}~ww xY w)z;Call a function and raise an errno-exception if applicable.Tr2   win32N)
r   OSErrorhasattrr2   sysplatformr3   _winerrnomapr:   r   )r   rB   r   rE   __tracebackhide__valuer2   r6   s           r   checked_callzErrorMaker.checked_callO   s     !	24(((( 	 	 	 	2 	2 	25'** KE|w&& --l5.ABBCC      K  ))%00#000111	2s,    B((B#	 A*)B#*A77,B##B(N)r,   r   r   r-   )r5   r8   r   r-   )rB   rC   r   rD   rE   rF   r   r	   )	r   r   r   r   r+   __annotations__r7   r3   rP   r    r   r   r*   r*   2   so          
 ,.L----      2 2 2 2 2 2r   r*   attrr   r   r-   c                ,    t          t          |           S )N)r1   _error_maker)rR   s    r   r7   r7   l   s    <&&&r   )rR   r   r   r-   )r   
__future__r   r2   r>   rK   typingr   r   r   typing_extensionsr   r   r	   EnvironmentErrorr   ENOENTEEXISTEXDEVEBUSYENOTDIREACCESrM   r*   rT   rP   r7   r    r   r   <module>r_      sd   7 7 " " " " " "  				 



                         ++++++	#AGCLL       & ||	|
 
32 32 32 32 32 32 32 32l z||(' ' ' ' ' 'r   