
    i              
         S r SSKJr  SSKJr  SSKrSSKrSSKrSSKJ	r	  SSKJ
r
  \	(       a  SSKJr  \" S5      r\
" S	5      r " S
 S\5      r\R"                  \R"                  \R$                  \R&                  \R(                  \R*                  \R*                  \R*                  \R,                  S.	r " S S5      r\" 5       r\R4                  rSS jrg)z1create errno-specific classes for IO or os calls.    )annotations)CallableN)TYPE_CHECKING)TypeVar)	ParamSpecPRc                  (    \ rS rSrSS jrSS jrSrg)Error   c                    SR                  U R                  R                  U R                  R                  U R                  R                  SR                  [        [        U R                  5      5      5      $ )Nz{}.{} {!r}: {}  )	format	__class__
__module____name____doc__joinmapstrargs)selfs    P/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/_pytest/_py/error.py__repr__Error.__repr__   sS     ''NN%%NN##NN""HHSdii()	
 	
    c           	         SR                  U R                  R                  SR                  [	        [
        U R                  5      5      5      nU$ )Nz[{}]: {}r   )r   r   r   r   r   r   r   )r   ss     r   __str__Error.__str__   s=    NN""HHSdii()
 r    N)returnr   )r   r   __qualname____firstlineno__r   r   __static_attributes__r!   r   r   r   r      s    
r   r   )	                     i     c                  V    \ rS rSr% Sr0 rS\S'   S
S jrSS jr        SS jr	Sr
g	)
ErrorMaker4   zlazily provides Exception classes for each possible POSIX errno
(as defined per the 'errno' module).  All such instances
subclass EnvironmentError.
zdict[int, type[Error]]_errno2classc                    US   S:X  a  [        U5      e[        [        U5      nU R                  U5      n[	        XU5        U$ )Nr   _)AttributeErrorgetattrerrno_geterrnoclasssetattr)r   nameenoclss       r   __getattr__ErrorMaker.__getattr__<   sC    7c> &&eT"!!#&C 
r   c           	          U R                   U   $ ! [         a_    [        R                  R	                  USU 35      n[        U[        4S[        R                  " U5      S.5      nX0R                   U'   Us $ f = f)NUnknownErrnopy.errorr   r   )	r1   KeyErrorr6   	errorcodegettyper   osstrerror)r   r:   clsnameerrorclss       r   r7   ErrorMaker._geterrnoclassD   s|    
	$$S)) 	oo))#cU/CDG)bkk#6FGH
 &.c"O	s    A&A:9A:c                   Sn U" U0 UD6$ ! [          a    e [         a  n[        US5      (       d  e [        R                  S:X  a4   U R                  [        UR                     5      nON! [         a    Uef = fUR                  c  [        S[         4SSS.5      nOU R                  UR                  5      nU" UR                   U< 35      eSnAff = f)z;Call a function and raise an errno-exception if applicable.Tr6   win32NUnknownErrnoNoner@   rA   )r   OSErrorhasattrsysplatformr7   _winerrnomapr6   rB   rE   r   )r   funcr   kwargs__tracebackhide__valuer;   s          r   checked_callErrorMaker.checked_callQ   s     !	2((( 	 	25'**||w&  --l5;;.GHC  K  ;;&*'1dCC --ekk:Cx011+	2s-    C&C"A*)C*A77ACCr!   N)r9   r   r"   type[Error])r:   intr"   rY   )rS   zCallable[P, R]r   zP.argsrT   zP.kwargsr"   r	   )r   r   r#   r$   r   r1   __annotations__r<   r7   rW   r%   r!   r   r   r/   r/   4   sC    
 ,.L(-2"2+12=E2	
2r   r/   c                "    [        [        U 5      $ )N)r5   _error_maker)attrs    r   r<   r<   v   s    <&&r   )r^   r   r"   rY   )r   
__future__r   collections.abcr   r6   rF   rP   typingr   r   typing_extensionsr   r   r	   EnvironmentErrorr   ENOENTEEXISTEXDEVEBUSYENOTDIREACCESrR   r/   r]   rW   r<   r!   r   r   <module>rj      s    7 " $  	 
    +#ACL & ||||	||
;2 ;2| |(('r   