o
    N©ZhB  ã                   @   sd   d dl Z d dlZdejd< G dd„ deƒZdd„ Zdd	„ Zd
d„ Zedkr0eƒ  eƒ  eƒ  dS dS )é    NTÚrecursec                   @   s.   e Zd Zdd„ Zdd„ Zdd„ ZeeeƒZdS )ÚFooc                 C   s
   d| _ d S ©Né   ©Ú_data©Úself© r
   úQ/var/www/html/lang_env/lib/python3.10/site-packages/dill/tests/test_properties.pyÚ__init__   ó   
zFoo.__init__c                 C   s   | j S ©Nr   r   r
   r
   r   Ú	_get_data   s   zFoo._get_datac                 C   s
   || _ d S r   r   )r	   Úxr
   r
   r   Ú	_set_data   r   zFoo._set_dataN)Ú__name__Ú
__module__Ú__qualname__r   r   r   ÚpropertyÚdatar
   r
   r
   r   r      s
    r   c                  C   s>   t  t¡} | jjd usJ ‚| jjd usJ ‚| jjd u sJ ‚d S r   )ÚdillÚcopyr   r   ÚfgetÚfsetÚfdel)ÚFooSr
   r
   r   Útest_data_not_none   s   
r   c                  C   sN   t  t¡} z| ƒ j}W n ty   t ¡ d }tt|ƒƒ‚w |dks%J ‚d S r   ©	r   r   r   r   Ú	ExceptionÚsysÚexc_infoÚAssertionErrorÚstr)r   ÚresÚer
   r
   r   Útest_data_unchanged#   s   
þr&   c                  C   sX   t  t¡} z| ƒ }d|_|j}W n ty#   t ¡ d }tt|ƒƒ‚w |dks*J ‚d S )Ni   r   r   )r   Úfr$   r%   r
   r
   r   Útest_data_changed.   s   

þr(   Ú__main__)	r    r   ÚsettingsÚobjectr   r   r&   r(   r   r
   r
   r
   r   Ú<module>   s   

ý