U
    /e                     @  s   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	 ej
dZej
dZdd	 Zd
d Ze	dee edZeeej dS )    )annotationsN)typename)pickle)ObjectDictSerializerregister_serialization_familycuda_serializecuda_deserializec                 C  sp   t t| }ztt| }W n tk
r:   t|Y nX || \}}|tt| ddt| d}||fS )Ncuda)F)
sub-headertype-serialized
serializercompression)	r   typer   dispatch	TypeErrorNotImplementedErrorr   dumpslen)x	type_namer   Z
sub_headerframesheader r   =/tmp/pip-unpacked-wheel-g426oqom/distributed/protocol/cuda.py
cuda_dumps   s    
r   c                 C  s&   t | d }t|}|| d |S )Nr   r
   )r   loadsr   r   )r   r   typr   r   r   r   
cuda_loads!   s    
r   r	   )
__future__r   ZdaskZ
dask.utilsr   Zdistributed.protocolr   Zdistributed.protocol.serializer   r   utilsZDispatchr   r   r   r   Z cuda_object_with_dict_serializerregisterdictZdeserializer   r   r   r   <module>   s   