← back to Atmos Game

assets/gen/.venv/lib/python3.12/site-packages/anyio/_core/__pycache__/_streams.cpython-312.pyc

31 lines

�

c�bj���ddlmZddlZddlmZddlmZddlmZm	Z	m
Z
ed�ZGd�d	ee	eeef�Z
y)
�)�annotationsN)�TypeVar)�warn�)�MemoryObjectReceiveStream�MemoryObjectSendStream�_MemoryObjectStreamState�T_Itemc�&�eZdZdZ	d					dd�Zy)�create_memory_object_streama
    Create a memory object stream.

    The stream's item type can be annotated like
    :func:`create_memory_object_stream[T_Item]`.

    :param max_buffer_size: number of items held in the buffer until ``send()`` starts
        blocking
    :param item_type: old way of marking the streams with the right generic type for
        static typing (does nothing on AnyIO 4)

        .. deprecated:: 4.0
          Use ``create_memory_object_stream[YourItemType](...)`` instead.
    :return: a tuple of (send stream, receive stream)

    Nc���|tjk7rt|t�st	d��|dkrt	d��|�tdtd��tt|�}t|�t|�fS)Nz5max_buffer_size must be either an integer or math.infrz"max_buffer_size cannot be negativeztThe item_type argument has been deprecated in AnyIO 4.0. Use create_memory_object_stream[YourItemType](...) instead.r)�
stacklevel)�math�inf�
isinstance�int�
ValueErrorr�DeprecationWarningr	r
rr)�cls�max_buffer_size�	item_type�states    �k/Users/macstudio3/Projects/atmos-game/assets/gen/.venv/lib/python3.12/site-packages/anyio/_core/_streams.py�__new__z#create_memory_object_stream.__new__$sz���d�h�h�&�z�/�3�/O��T�U�U��Q���A�B�B�� ��N�"��	
�)��0��A��&�u�-�/H��/O�P�P�)rN)r�floatr�object�returnzHtuple[MemoryObjectSendStream[T_Item], MemoryObjectReceiveStream[T_Item]])�__name__�
__module__�__qualname__�__doc__r�rrrrs.���$>B�Q�#�Q�4:�Q�	Q�Qrr)�
__future__rr�typingr�warningsr�streams.memoryrrr	r
�tuplerr#rr�<module>r)sL��"������
��	��$Q�	�
 ��
(�*C�F�*K�
K�L�$Qr