o
    +i
                     @   s   d Z zddlmZmZmZmZmZmZmZm	Z	 W n` e
yx   ddlZddlZddlZddlmZmZmZmZ eeegef  ZdZdZdZdZG d	d
 d
ZddlmZ 		ddedee dedefddZdeeeeef 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Union            c                   @   s   e Zd ZdefddZdS )r   payloadbc                 C   s
   || _ d S N)r   )selfr    r   X/var/www/html/psymed-ai/venv/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                   s`   |d u rd}t |t@ t |t@ t |t@ G  fdddtj}tj| |ddS )Nr   c                       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&   3   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   8   s   
z$dumps.<locals>.CustomEncoder.default)r   r   r   r
   r-   r&   r   __classcell__r   r   r3   r4   r5   r(   r   CustomEncoder2   s    &r8   )clsr"   )boolr   r   r   jsonJSONEncoderr   r&   )r   r   r   r8   r   r7   r   r   "   s   	r   payloadc                C   s
   t | S r   )r;   r	   )r=   r   r   r   r	   K   r   r	   )r	   r   r   r   r   r   r   r   )NN)__doc__orjsonr   r   r   r   r   r   r   r	   ImportErrorr/   r;   r+   typingr
   r   r   r   DefaultFuncintr   	bytearray
memoryviewr-   __all__r   r   r   r   <module>   s:    ,
")@