§
    ƒÛg
  ã                   ó  — d Z ddlZddlmZ ddlmZmZ ddlmZ ddl	m
Z
  e¦   «         Zde_         e¦   «         Zde_         e¦   «         Z G d„ d	e¦  «        Zd
„ Zd„ Z G d„ de
¦  «        Zedk    r ej        ¦   «          dS dS )z'
Test generic manipulation of objects.
é    N)Únjit)Úcompile_isolatedÚFlags)Útypes)ÚTestCaseTc                   ó   — e Zd ZdS )ÚCN)Ú__name__Ú
__module__Ú__qualname__© ó    úN/granary/edev/quantum/lib/python3.11/site-packages/numba/tests/test_objects.pyr	   r	      s   € € € € € Ø€Dr   r	   c                 ó   — || _         d S ©N©Úx)ÚoÚvs     r   Úsetattr_usecaser      s   € Ø
€A„C€C€Cr   c                 ó
   — | ` d S r   r   )r   s    r   Údelattr_usecaser      s   € Ø	ˆˆˆr   c                   ó6   — e Zd Zefd„Zefd„Zefd„Zefd„ZdS )ÚTestAttributesc                 óÜ   — t           }t          |t          j        t          j        f|¬¦  «        }|j        }t          ¦   «         } ||d¦  «         |                      |j        d¦  «         d S ©N©Úflagsé{   )	r   r   r   ÚpyobjectÚint32Úentry_pointr	   ÚassertEqualr   ©Úselfr   ÚpyfuncÚcrÚcfuncÚcs         r   Útest_setattrzTestAttributes.test_setattr!   sa   € Ý ˆÝ˜f¥u¤~µu´{Ð&CÈ5ÐQÑQÔQˆØ”ˆÝ‰CŒCˆØˆˆa�‰ŒˆØ×Ò˜œ˜cÑ"Ô"Ð"Ð"Ð"r   c                 ó  — t           }t          |t          j        t          j        f|¬¦  «        }|j        }|                      t          ¦  «        5   |t          ¦   «         d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S r   )	r   r   r   r    r!   r"   ÚassertRaisesÚAttributeErrorÚobject©r%   r   r&   r'   r(   s        r   Útest_setattr_attribute_errorz+TestAttributes.test_setattr_attribute_error)   s¹   € Ý ˆÝ˜f¥u¤~µu´{Ð&CÈ5ÐQÑQÔQˆØ”ˆà×Ò�~Ñ.Ô.ð 	!ð 	!ØˆE•&‘(”(˜CÑ Ô Ð ð	!ð 	!ð 	!ñ 	!ô 	!ð 	!ð 	!ð 	!ð 	!ð 	!ð 	!ð 	!øøøð 	!ð 	!ð 	!ð 	!ð 	!ð 	!s   ÁA7Á7A;Á>A;c                 ó  — t           }t          |t          j        f|¬¦  «        }|j        }t          ¦   «         }d|_         ||¦  «         |                      t          ¦  «        5  |j         d d d ¦  «         d S # 1 swxY w Y   d S r   )	r   r   r   r    r"   r	   r   r,   r-   r$   s         r   Útest_delattrzTestAttributes.test_delattr1   sÃ   € Ý ˆÝ˜f¥u¤~Ð&7¸uÐEÑEÔEˆØ”ˆÝ‰CŒCˆØˆŒØˆˆa‰ŒˆØ×Ò�~Ñ.Ô.ð 	ð 	ØŒCˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   Á&A;Á;A?ÂA?c                 óð   — t           }t          |t          j        f|¬¦  «        }|j        }|                      t          ¦  «        5   |t          ¦   «         ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   )r   r   r   r    r"   r,   r-   r	   r/   s        r   Útest_delattr_attribute_errorz+TestAttributes.test_delattr_attribute_error;   s°   € Ý ˆÝ˜f¥u¤~Ð&7¸uÐEÑEÔEˆØ”ˆà×Ò�~Ñ.Ô.ð 	ð 	ØˆE•!‘#”#‰JŒJˆJð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   ÁA+Á+A/Á2A/N)r
   r   r   Úenable_pyobj_flagsr*   r0   r2   r4   r   r   r   r   r       sx   € € € € € Ø!3ð #ð #ð #ð #ð 2Dð !ð !ð !ð !ð "4ð ð ð ð ð 2Dð ð ð ð ð ð r   r   Ú__main__)Ú__doc__ÚunittestÚnumbar   Únumba.core.compilerr   r   Ú
numba.corer   Únumba.tests.supportr   r5   Úenable_pyobjectÚforce_pyobj_flagsÚforce_pyobjectÚno_pyobj_flagsr.   r	   r   r   r   r
   Úmainr   r   r   ú<module>rB      s6  ððð ð
 €€€Ø Ð Ð Ð Ð Ð Ø 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ø Ð Ð Ð Ð Ð Ø (Ð (Ð (Ð (Ð (Ð (à�U‘W”WÐ Ø%)Ð Ô "à�E‘G”GÐ Ø#'Ð Ô  à�‘”€ð	ð 	ð 	ð 	ð 	ˆñ 	ô 	ð 	ðð ð ðð ð ð!ð !ð !ð !ð !�Xñ !ô !ð !ðH ˆzÒÐØ€H„M�O„O€O€O€Oð Ðr   