o
    Zh;
                     @   s   d Z zddlmZmZmZmZmZmZmZm	Z	 W nT e
yl   ddlZddlZddlZddlmZmZmZ dZdZdZdZG d	d
 d
ZddlmZ 		ddeeegef  dededefddZdedefddZ	Y nw g dZdS )zFStubs for orjson operations, compatible with PyPy via a json fallback.    )OPT_NON_STR_KEYSOPT_SERIALIZE_DATACLASSOPT_SERIALIZE_NUMPYOPT_SERIALIZE_UUIDFragmentJSONDecodeErrordumpsloadsN)AnyCallableOptional            c                   @   s   e Zd ZdefddZdS )r   payloadbc                 C   s
   || _ d S N)r   )selfr    r   R/var/www/html/lang_env/lib/python3.10/site-packages/langsmith/_internal/_orjson.py__init__      
zFragment.__init__N)__name__
__module____qualname__bytesr   r   r   r   r   r      s    r   )r   defaultoptionobjreturnc                   sT   t |t@ t |t@ t |t@ G  fdddtj}tj| |ddS )Nc                       sD   e Zd Zdedef fddZdedef fddZ  ZS )zdumps.<locals>.CustomEncoderor   c                    s"   t |tr|jdS t |S )Nutf-8)
isinstancer   r   decodesuperencoder   r    	__class__r   r   r%   /   s   
z#dumps.<locals>.CustomEncoder.encodec                    sl   rt |tjrt|S rt|dr| S r(t|r(t |ts(t	|S d ur0|S t
 |S )Ntolist)r"   uuidUUIDstrhasattrr)   dataclassesis_dataclasstypeasdictr$   r   r&   )r(   r   enable_serialize_dataclassenable_serialize_numpyenable_serialize_uuidr   r   r   4   s   
z$dumps.<locals>.CustomEncoder.default)r   r   r   r
   r,   r%   r   __classcell__r   r   r2   r3   r4   r'   r   CustomEncoder.   s    &r7   )clsr!   )boolr   r   r   jsonJSONEncoderr   r%   )r   r   r   r7   r   r6   r   r       s
   
r   payloadc                C   s
   t | S r   )r:   r	   )r<   r   r   r   r	   G   r   r	   )r	   r   r   r   r   r   r   r   )Nr   )__doc__Zorjsonr   r   r   r   r   r   r   r	   ImportErrorr.   r:   r*   typingr
   r   r   intr   __all__r   r   r   r   <module>   s8    ,
'<