o
    VÛ·iB  ã                   @   s~   d dl Z de jd< d dlZG dd„ dƒZG dd„ dƒZdd	„ Zd
d„ Zdd„ Zedkr;eƒ  d dl	m
Z
 e
s=eƒ  dS dS dS )é    NTÚrecursec                   @   ó   e Zd Zdd„ ZdS )Ú_classc                 C   ó   d S ©N© ©Úselfr   r   úM/home/ubuntu/vllm_env/lib/python3.10/site-packages/dill/tests/test_weakref.pyÚ_method   ó   z_class._methodN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r
   r      ó    r   c                   @   r   )Ú_callable_classc                 C   r   r   r   r   r   r   r
   Ú__call__   r   z_callable_class.__call__N)r   r   r   r   r   r   r   r
   r      r   r   c                   C   r   r   r   r   r   r   r
   Ú	_function   r   r   c               
   C   sÌ   t ƒ } tƒ }t}t }t | ¡}t t ƒ ¡}t |¡}t |¡}t | ¡}t t ƒ ¡}	t |¡}
t tƒ ¡}t |¡}t |¡}||||||	|
|||g
}|D ]}tj |¡}|r_t	d||f ƒ |rcJ ‚qMd S )Nz%r:
  %s)
r   r   r   ÚweakrefÚrefÚproxyÚdillÚdetectÚerrorsÚprint)ÚoÚocÚfÚxÚrÚd_rÚfrÚxrÚpÚd_pÚcpÚd_cpÚfpÚxpÚobjlistÚobjÚresr   r   r
   Útest_weakref   s*   







úr,   c                  C   sX   ddl m}  z| ddiƒ}W n ty   tj}Y nw t |¡}| ¡ | ¡ ks*J ‚d S )Nr   )ÚDictProxyTypeÚfooÚbar)Ú
dill._dillr-   Ú	ExceptionÚtypeÚ__dict__r   ÚcopyÚitems)r-   ÚmÚmpr   r   r
   Útest_dictproxy:   s   
ÿ
r8   Ú__main__)ÚIS_PYPY)r   Úsettingsr   r   r   r   r,   r8   r   r0   r:   r   r   r   r
   Ú<module>   s   
!

ü