
    h?                         S SK r SSKJr  SSKJrJr  SSKJrJrJrJ	r	  S\S\
4S jrSS\
S	\S\	4S
 jjrS\S\SS4S jrSS\S	\S\	4S jjrg)    N   )msgpack)msgpack_encodersmsgpack_decoders)
force_pathFilePathJSONInputBinJSONOutputBindatareturnc                 ,    [         R                  " U SS9$ )zsSerialize an object to a msgpack byte string.

data: The data to serialize.
RETURNS (bytes): The serialized bytes.
Tuse_bin_type)r   dumps)r   s    L/home/james-whalen/.local/lib/python3.13/site-packages/srsly/_msgpack_api.pymsgpack_dumpsr      s     ==D11    use_listc                     [         R                  " 5         [        R                  " U SUS9n[         R                  " 5         U$ )zDeserialize msgpack bytes to a Python object.

data (bytes): The data to deserialize.
use_list (bool): Don't use tuples instead of lists. Can make
    deserialization slower.
RETURNS: The deserialized Python object.
Frawr   )gcdisabler   loadsenable)r   r   msgs      r   msgpack_loadsr      s-     JJL
--%(
;CIIKJr   pathc                     [        U SS9nUR                  S5       n[        R                  " XSS9  SSS5        g! , (       d  f       g= f)zzCreate a msgpack file and dump contents.

location (FilePath): The file path.
data (JSONInputBin): The data to serialize.
F)require_existswbTr   N)r   openr   dump)r   r   	file_pathfs       r   write_msgpackr&       s8     46I		T40 
		s	   ;
A	c                     [        U 5      nUR                  S5       n[        R                  " 5         [        R
                  " USUS9n[        R                  " 5         UsSSS5        $ ! , (       d  f       g= f)zLoad a msgpack file.

location (FilePath): The file path.
use_list (bool): Don't use tuples instead of lists. Can make
    deserialization slower.
RETURNS (JSONOutputBin): The loaded and deserialized content.
rbFr   N)r   r"   r   r   r   loadr   )r   r   r$   r%   r   s        r   read_msgpackr*   +   sO     4 I		


ll1%(;
		 
		s   AA))
A7)T)r    r   r   r   utilr   r   r	   r
   bytesr   boolr   r&   r*    r   r   <module>r0      su    	  7 C C2 2 2   1 1 1 1x 4 = r   