
    i
                     v   d dl Z d dlZddlmZmZ ddlmZ ddl ddlm	Z
 ddlmZ ddlmZ dd	lmZ dd
lmZ ddlmZ  ej.                  ddd      Z ej.                  ddd      Zej5                  de       ej5                  de        G d de
      Z	 G d de      Zd Zd Zd Zd ZeZeZeZ eZ!y)    N   )utcepoch)version)*)Packer)unpackb)Unpacker)ExtType)encode_numpy)decode_numpysrslymsgpack_encodersT)entry_pointsmsgpack_decodersnumpy)funcc                        e Zd Z fdZ xZS )r   c                     |j                  d      }t        j                         j                         D ]  }t	        j
                  ||      } ||d<   t        t        | "  |i | y )Ndefaultchain)	getr   get_allvalues	functoolspartialsuperr   __init__)selfargskwargsr   encoder	__class__s        g/var/www/vps2.regionflexible.com/Desarrollo/venv/lib/python3.12/site-packages/srsly/msgpack/__init__.pyr   zPacker.__init__   sd    **Y''//188: 	@G''w?G	@#yfd$d5f5    __name__
__module____qualname__r   __classcell__r$   s   @r%   r   r      s    6 6r&   r   c                        e Zd Z fdZ xZS )r
   c                     |j                  d      }t        j                         j                         D ]  }t	        j
                  ||      } ||d<   t        t        | "  |i | y )Nobject_hookr   )	r   r   r   r   r   r   r   r
   r   )r    r!   r"   r/   decoderr$   s        r%   r   zUnpacker.__init__(   sd    jj/'//188: 	HG#++G;GK	H +}h&77r&   r'   r,   s   @r%   r
   r
   '   s    8 8r&   r
   c                 Z    t        di |}|j                  |j                  |              y)z2
    Pack an object and write it to a stream.
    N )r   writepack)ostreamr"   packers       r%   r4   r4   0   s%     fF
LLQ r&   c                 6    t        di |j                  |       S )z5
    Pack an object and return the packed bytes.
    r2   )r   r4   )r5   r"   s     r%   packbr9   8   s     F  ##r&   c                     d|vrT|j                  d      }t        j                         j                         D ]  }t	        j
                  ||      } ||d<   | j                         }t        |fi |S )z/
    Unpack a packed object from a stream.
    object_pairs_hookr/   r   )r   r   r   r   r   r   read_unpackb)r6   r"   r/   r0   datas        r%   unpackr?   ?   st     &(jj/'//188: 	HG#++G;GK	H +};;=DD#F##r&   c                     d|vrT|j                  d      }t        j                         j                         D ]  }t	        j
                  ||      } ||d<   t        | fi |S )z!
    Unpack a packed object.
    r;   r/   r   )r   r   r   r   r   r   r=   )packedr"   r/   r0   s       r%   r	   r	   L   si     &(jj/'//188: 	HG#++G;GK	H +}F%f%%r&   )"r   	catalogue_epochr   r   _versionr   
exceptions_packerr   _Packer	_unpackerr	   r=   r
   	_Unpackerextr   _msgpack_numpyr   _encode_numpyr   _decode_numpycreater   r   registerr4   r9   r?   loadloadsdumpdumpsr2   r&   r%   <module>rT      s         ' * ,  9 9 $9##G-?dS #9##G-?dS    '  6   '  66W 68y 8!$
$	& r&   