
    Zi                    z    d dl mZ d dlZd dlmc mZ d dlm	Z	m
Z
 d dlmZ d dlmZ  ed      Z G d de		      Zy)
    )annotationsN)ABCMetaabstractmethod)TracebackType)TypeVarTc                  F    e Zd ZdZdZddZ	 	 	 	 	 	 	 	 ddZed	d       Zy)
AsyncResourcez
    Abstract base class for all closeable asynchronous resources.

    Works as an asynchronous context manager which returns the instance itself on enter,
    and calls :meth:`aclose` on exit.
     c                   K   | S wNr   selfs    P/home/portmadness/app/.venv/lib/python3.12/site-packages/anyio/abc/_resources.py
__aenter__zAsyncResource.__aenter__   s     s   c                @   K   | j                          d {    y 7 wr   )aclose)r   exc_typeexc_valexc_tbs       r   	__aexit__zAsyncResource.__aexit__   s      kkms   c                   K   yw)zClose the resource.Nr   r   s    r   r   zAsyncResource.aclose   s     s   N)r   r   returnr   )r   ztype[BaseException] | Noner   zBaseException | Noner   zTracebackType | Noner   None)r   r   )	__name__
__module____qualname____doc__	__slots__r   r   r   r   r       r   r
   r
   
   sR     I, & %	
 
 " "r    r
   )	metaclass)
__future__r   builtins@py_builtins_pytest.assertion.rewrite	assertionrewrite
@pytest_arabcr   r   typesr   typingr   r   r
   r   r    r   <module>r,      s+    "    '  CL"g "r    