
    0Fie                    R    d dl mZ d dlZd dlmZ d dlmZ d dlmZm	Z	 dd
Z
ddZdS )    )annotationsN)Iterator)Any)pack_frames_preludeunpack_framesobjobjectreturnlist[bytes | memoryview]c                    g t          j        | dfd          }                    d|                               dt                               S )a   Variant of :func:`serialize_bytelist`, that doesn't support compression, locally
    defined classes, or any of its other fancy features but runs 10x faster for numpy
    arrays

    See Also
    --------
    serialize_bytelist
    unpickle_bytestream
       c                R                         |                                           S )N)appendraw)pbframess    ;lib/python3.11/site-packages/distributed/shuffle/_pickle.py<lambda>z!pickle_bytelist.<locals>.<lambda>   s    FMM"&&((4K4K     )protocolbuffer_callbackr   )pickledumpsinsertr   )r   pikr   s     @r   pickle_bytelistr   
   si     F
,a)K)K)K)K  C MM!S
MM!(00111Mr   bbytes | bytearray | memoryviewIterator[Any]c              #     K   	 t          | d          ^}}}t          j        ||          V  |j        dk    rdS |} =)zUnpickle the concatenated output of multiple calls to :func:`pickle_bytelist`

    See Also
    --------
    pickle_bytelist
    deserialize_bytes
    T)	remainder)buffersr   N)r   r   loadsnbytes)r   r   r"   r!   s       r   unpickle_bytestreamr%      s\      #0d#C#C#C gyl3000000q  Er   )r   r	   r
   r   )r   r   r
   r   )
__future__r   r   collections.abcr   typingr   distributed.protocol.utilsr   r   r   r%    r   r   <module>r+      s    " " " " " "  $ $ $ $ $ $       I I I I I I I I   &     r   