
    Kix
                        d dl mZ d dlZd dlZd dlZd dlZdgZd
dZej                  dk\  rd dl	m
Z
 n G d de      Z
ej                   G d d	             Zy)    )annotationsNExceptionGroupc                     t         S N)__all__     \/home/jay/workspace/scripts/.codegraph-venv/lib/python3.12/site-packages/packaging/errors.py__dir__r      s    Nr	   )      )r   c                  6    e Zd ZU dZded<   ded<   d	dZd
dZy)r   zA minimal implementation of :external:exc:`ExceptionGroup` from Python 3.11.

        If :external:exc:`ExceptionGroup` is already defined by Python itself,
        that version is used instead.
        strmessagelist[Exception]
exceptionsc                     || _         || _        y r   )r   r   )selfr   r   s      r
   __init__zExceptionGroup.__init__   s    "DL(DOr	   c                h    | j                   j                   d| j                  d| j                  dS )N(z, ))	__class____name__r   r   )r   s    r
   __repr__zExceptionGroup.__repr__!   s1    nn--.a/?r$//ATTUVVr	   N)r   r   r   r   returnNone)r   r   )r   
__module____qualname____doc____annotations__r   r   r   r	   r
   r   r      s    	 ##	)	Wr	   c                      e Zd ZU dZ ej
                  ed      Zded<   ddZ	e
j                  dd       Ze
j                  dd       Z	 	 	 	 dd	Zy
)_ErrorCollectora  
    Collect errors into ExceptionGroups.

    Used like this:

        collector = _ErrorCollector()
        # Add a single exception
        collector.error(ValueError("one"))

        # Supports nesting, including combining ExceptionGroups
        with collector.collect():
            raise ValueError("two")
        collector.finalize("Found some errors")

    Since making a collector and then calling finalize later is a common pattern,
    a convenience method ``on_exit`` is provided.
    F)default_factoryinitr   errorsc                H    | j                   rt        || j                         y)z0Raise a group exception if there are any errors.N)r&   r   r   msgs     r
   finalizez_ErrorCollector.finalize;   s    ;; dkk22 r	   c              #  6   K   |  | j                  |       yw)zx
        Calls finalize if no uncollected errors were present.

        Uncollected errors are raised normally.
        N)r*   r(   s     r
   on_exitz_ErrorCollector.on_exit@   s      
cs   c              '     K   |xs t         f}	 d y# t        $ r/}| j                  j                  |j                         Y d}~yd}~w|$ r%}| j                  j                  |       Y d}~yd}~ww xY ww)z
        Context manager to collect errors into the error list.

        Must be inside loops, as only one error can be collected at a time.
        N)	Exceptionr   r&   extendr   append)r   err_clserror_classeserrors       r
   collectz_ErrorCollector.collectJ   sd       /I<	& 	1KKu//00 	&KKu%%	&s<   A7 A7	A4%AA7A4A/*A7/A44A7c                :    | j                   j                  |       y)zAdd an error to the list.N)r&   r0   )r   r3   s     r
   r3   z_ErrorCollector.errorY   s    
 	5!r	   N)r)   r   r   r   )r)   r   r   z-typing.Generator[_ErrorCollector, None, None])r1   ztype[Exception]r   z"typing.Generator[None, None, None])r3   r.   r   r   )r   r   r   r    dataclassesfieldlistr&   r!   r*   
contextlibcontextmanagerr,   r4   r3   r   r	   r
   r#   r#   %   sr    $ 0k//5QFOQ3
   & &"" 
"r	   r#   )r   z	list[str])
__future__r   r9   r6   systypingr   r   version_infobuiltinsr   r.   	dataclassr#   r   r	   r
   <module>rA      sa    "   
 
 w'W W$ 8" 8" 8"r	   