o
    ~]                     @   s   d Z ddlZdejd< ddlmZmZmZ eddd G dd	 d	Zi Zd
d  ed< Z	e j
 ed< Z
ej
ed< ee dddZdd ZedkrPe  dS dS )z
demonstrate dill's ability to pickle different python types
test pickling of all Python Standard Library objects (currently: CH 1-14 @ 2.7)
    NTrecurse)
load_typesobjectsextendF)
pickleableunpickleablec                   @   s   e Zd Zdd ZdS )_classc                 C   s   d S N )selfr
   r
   P/var/www/Datamplify/venv/lib/python3.10/site-packages/dill/tests/test_objects.py_method   s   z_class._methodN)__name__
__module____qualname__r   r
   r
   r
   r   r      s    r   c                    s    fddS )Nc                    s    S r	   r
   )yxr
   r   <lambda>!   s    z<lambda>.<locals>.<lambda>r
   r   r
   r   r   r   !   s    r   
LambdaType
MethodTypeUnboundMethodTypec                 C   s   t |  }zAtt|}|r9z
||ksJ W W dS  ty8   t|t|ks*J td| t|f  Y W dS w t|t|ksCJ W dS  tyY   td| t|f  Y dS w )z'quick check if object pickles with dillzweak: %s %szfails: %s %sN)r   pickleloadsdumpsAssertionErrortypeprint	Exception)nameexactobjpikr
   r
   r   pickles&   s   r#   c                  C   s   t  D ]} t| dd qd S )NF)r    )r   keysr#   )memberr
   r
   r   test_objects7   s   r&   __main__)F)__doc__dillr   settingsr   r   r   r   special_lambdar   updater#   r&   r   r
   r
   r
   r   <module>   s    




