§
    ƒÛg  ã                   óV   — d dl mZ d dlmZmZ d dlmZmZ d dlZ	 G d„ de¦  «        Z
dS )é    )ÚTestCase)ÚnjitÚtypes)ÚListÚDictNc                   ó2   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestConditionsAsPredicatesc                 ó`  ‡— t           j        t           j        t           j        t           j        t           j        t           j        t          t          t          t          t          g}|D ]ƒ}dD ]~} ||¦  «        Št          ˆfd„¦   «         }|                       |¦   «         |                     ¦   «         ¦  «         |                       |¦   «         |dk    s	|t          u rdnd¦  «         ŒŒ„t          d„ ¦   «         }d}|                       ||¦  «        |                     |¦  «        ¦  «         d S )N)é   r   c                  ó   •— ‰ rdS dS ©Né
   é   © ©Úxs   €ú_/granary/edev/quantum/lib/python3.11/site-packages/numba/tests/test_conditions_as_predicates.pyÚfooz4TestConditionsAsPredicates.test_scalars.<locals>.foo   s   ø€ àð "Ø!˜rà!˜ró    r   r   r   c                 ó   — | rdS dS r   r   r   s    r   r   z4TestConditionsAsPredicates.test_scalars.<locals>.foo   ó   € àð Ø�rà�rr   Ú )ÚnpÚint8Úuint16Úint64Úfloat32Úfloat64Ú
complex128ÚintÚfloatÚcomplexÚstrÚboolr   ÚassertEqualÚpy_func)ÚselfÚdtsÚdtÚcr   Úsr   s         @r   Útest_scalarsz'TestConditionsAsPredicates.test_scalars	   s/  ø€ åŒw�œ	¥2¤8­R¬Z½¼ÝŒ}�c¥5­'µ3½ð>ˆàð 	Kð 	KˆBØð 
Kð 
K�Ø�B�q‘E”E�åð"ð "ð "ð "ñ ”ð"ð
 × Ò   ¡¤¨¯ª©¬Ñ6Ô6Ð6Ø× Ò   ¡¤¨a°1ªf¨f¸½c¸	¸	¨¨ÀrÑJÔJÐJÐJð
Kõ 
ð	ð 	ñ 
Œð	ð
 ˆØ×Ò˜˜˜Q™œ §¢¨Q¡¤Ñ0Ô0Ð0Ð0Ð0r   c                 óø  — t           d„ ¦   «         }t          j        t          j        ¦  «        }|                       ||¦  «        |                     |¦  «        ¦  «         |                      |                     |¦  «        d¦  «         |                     d¦  «         |                       ||¦  «        |                     |¦  «        ¦  «         |                      |                     |¦  «        d¦  «         d S )Nc                 ó   — | rdS dS r   r   r   s    r   r   z7TestConditionsAsPredicates.test_typed_list.<locals>.foo%   r   r   r   r   r   )r   r   Ú
empty_listr   r   r%   r&   Úappend©r'   r   Úzs      r   Útest_typed_listz*TestConditionsAsPredicates.test_typed_list$   sÕ   € Ý	ð	ð 	ñ 
Œð	õ ŒO�EœKÑ(Ô(ˆØ×Ò˜˜˜Q™œ §¢¨Q¡¤Ñ0Ô0Ð0Ø×Ò˜Ÿš Q™œ¨Ñ,Ô,Ð,ð 	
�Š�‰ŒˆØ×Ò˜˜˜Q™œ §¢¨Q¡¤Ñ0Ô0Ð0Ø×Ò˜Ÿš Q™œ¨Ñ,Ô,Ð,Ð,Ð,r   c                 ó‚  — t           d„ ¦   «         }dg}|                       ||¦  «        |                     |¦  «        ¦  «         |                      |                     |¦  «        d¦  «         t           d„ ¦   «         }|                       |¦   «         |                     ¦   «         ¦  «         |                      |                     ¦   «         d¦  «         t           d„ ¦   «         }|                       |¦   «         |                     ¦   «         ¦  «         |                      |                     ¦   «         d¦  «         d S )Nc                 ó   — | rdS dS r   r   r   s    r   r   z;TestConditionsAsPredicates.test_reflected_list.<locals>.foo8   r   r   r   r   c                  ó   — ddg} | rdS dS ©Nr   é   r   r   r   ©Úys    r   r   z;TestConditionsAsPredicates.test_reflected_list.<locals>.fooD   ó   € à�A�ˆAØð Ø�rà�rr   c                  ó�   — ddg} |                       ¦   «          |                       ¦   «          t          | ¦  «        dk    sJ ‚| rdS dS ©Nr   r8   r   r   r   ©ÚpopÚlenr9   s    r   r   z;TestConditionsAsPredicates.test_reflected_list.<locals>.fooP   óJ   € à�A�ˆAØ�EŠE‰GŒGˆGØ�EŠE‰GŒGˆGÝ�q‘6”6˜Q’;�;�;�;Øð Ø�rà�rr   r   ©r   r%   r&   r1   s      r   Útest_reflected_listz.TestConditionsAsPredicates.test_reflected_list6   ó0  € å	ð	ð 	ñ 
Œð	ð ˆCˆØ×Ò˜˜˜Q™œ §¢¨Q¡¤Ñ0Ô0Ð0Ø×Ò˜Ÿš Q™œ¨Ñ,Ô,Ð,õ 
ð	ð 	ñ 
Œð	ð 	×Ò˜˜™œ §¢¡¤Ñ.Ô.Ð.Ø×Ò˜Ÿš™œ¨Ñ+Ô+Ð+õ 
ð	ð 	ñ 
Œð	ð 	×Ò˜˜™œ §¢¡¤Ñ.Ô.Ð.Ø×Ò˜Ÿš™œ¨Ñ+Ô+Ð+Ð+Ð+r   c                 ó‚  — t           d„ ¦   «         }dh}|                       ||¦  «        |                     |¦  «        ¦  «         |                      |                     |¦  «        d¦  «         t           d„ ¦   «         }|                       |¦   «         |                     ¦   «         ¦  «         |                      |                     ¦   «         d¦  «         t           d„ ¦   «         }|                       |¦   «         |                     ¦   «         ¦  «         |                      |                     ¦   «         d¦  «         d S )Nc                 ó   — | rdS dS r   r   r   s    r   r   z:TestConditionsAsPredicates.test_reflected_set.<locals>.foo`   r   r   r   r   c                  ó   — ddh} | rdS dS r7   r   r9   s    r   r   z:TestConditionsAsPredicates.test_reflected_set.<locals>.fool   r;   r   c                  ó�   — ddh} |                       ¦   «          |                       ¦   «          t          | ¦  «        dk    sJ ‚| rdS dS r=   r>   r9   s    r   r   z:TestConditionsAsPredicates.test_reflected_set.<locals>.foox   rA   r   r   rB   r1   s      r   Útest_reflected_setz-TestConditionsAsPredicates.test_reflected_set^   rD   r   c                 óî  — t           d„ ¦   «         }t          j        t          j        t          j        ¦  «        }|                       ||¦  «        |                     |¦  «        ¦  «         |                      |                     |¦  «        d¦  «         d|d<   |                       ||¦  «        |                     |¦  «        ¦  «         |                      |                     |¦  «        d¦  «         d S )Nc                 ó   — | rdS dS r   r   r   s    r   r   z7TestConditionsAsPredicates.test_typed_dict.<locals>.foo‡   r   r   r   é   r8   r   )r   r   Úemptyr   r   r%   r&   r1   s      r   Útest_typed_dictz*TestConditionsAsPredicates.test_typed_dict†   sÓ   € Ý	ð	ð 	ñ 
Œð	õ ŒJ•u”{¥E¤KÑ0Ô0ˆØ×Ò˜˜˜Q™œ §¢¨Q¡¤Ñ0Ô0Ð0Ø×Ò˜Ÿš Q™œ¨Ñ,Ô,Ð,ð ˆˆ!‰Ø×Ò˜˜˜Q™œ §¢¨Q¡¤Ñ0Ô0Ð0Ø×Ò˜Ÿš Q™œ¨Ñ,Ô,Ð,Ð,Ð,r   c                 ó‚  — t           d„ ¦   «         }t          j        d¦  «        }|                       ||¦  «        |                     |¦  «        ¦  «         |                      |                     |¦  «        d¦  «         t          j        d¦  «        }|                       ||¦  «        |                     |¦  «        ¦  «         |                      |                     |¦  «        d¦  «         t          j        dggg¦  «        }|                       ||¦  «        |                     |¦  «        ¦  «         |                      |                     |¦  «        d¦  «         t          j        dggg¦  «        }|                       ||¦  «        |                     |¦  «        ¦  «         |                      |                     |¦  «        d¦  «         t          j        d¦  «        }|                       ||¦  «        |                     |¦  «        ¦  «         |                      |                     |¦  «        d¦  «         t          j        ddg¦  «        }|                      t          ¦  «        5 } ||¦  «         d d d ¦  «         n# 1 swxY w Y   d}|                      |t          |j
        ¦  «        ¦  «         d S )Nc                 ó   — | rdS dS r   r   r   s    r   r   z3TestConditionsAsPredicates.test_arrays.<locals>.foo™   r   r   r   r   r   r   r8   z[The truth value of an array with more than one element is ambiguous. Use a.any() or a.all())r   r   Úarrayr%   r&   rM   ÚassertRaisesÚ
ValueErrorÚassertInr#   Ú	exception)r'   r   r2   ÚraisesÚmsgs        r   Útest_arraysz&TestConditionsAsPredicates.test_arrays˜   s�  € Ý	ð	ð 	ñ 
Œð	õ ŒH�Q‰KŒKˆØ×Ò˜˜˜Q™œ §¢¨Q¡¤Ñ0Ô0Ð0Ø×Ò˜Ÿš Q™œ¨Ñ,Ô,Ð,õ ŒH�Q‰KŒKˆØ×Ò˜˜˜Q™œ §¢¨Q¡¤Ñ0Ô0Ð0Ø×Ò˜Ÿš Q™œ¨Ñ,Ô,Ð,åŒH˜�s�e�WÑÔˆØ×Ò˜˜˜Q™œ §¢¨Q¡¤Ñ0Ô0Ð0Ø×Ò˜Ÿš Q™œ¨Ñ,Ô,Ð,õ ŒH˜�s�e�WÑÔˆØ×Ò˜˜˜Q™œ §¢¨Q¡¤Ñ0Ô0Ð0Ø×Ò˜Ÿš Q™œ¨Ñ,Ô,Ð,õ
 ŒH�Q‰KŒKˆØ×Ò˜˜˜Q™œ §¢¨Q¡¤Ñ0Ô0Ð0Ø×Ò˜Ÿš Q™œ¨Ñ,Ô,Ð,õ ŒH�a˜�VÑÔˆØ×Ò�zÑ*Ô*ð 	¨fØˆC�‰FŒFˆFð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð3ˆà�Š�c�3˜vÔ/Ñ0Ô0Ñ1Ô1Ð1Ð1Ð1s   É2J
Ê
JÊJN)	Ú__name__Ú
__module__Ú__qualname__r,   r3   rC   rI   rN   rX   r   r   r   r	   r	      sp   € € € € € ð1ð 1ð 1ð6-ð -ð -ð$&,ð &,ð &,ðP&,ð &,ð &,ðP-ð -ð -ð$)2ð )2ð )2ð )2ð )2r   r	   )Únumba.tests.supportr   Únumbar   r   Únumba.typedr   r   Únumpyr   r	   r   r   r   ú<module>r`      s‘   ðØ (Ð (Ð (Ð (Ð (Ð (Ø Ð Ð Ð Ð Ð Ð Ð Ø "Ð "Ð "Ð "Ð "Ð "Ð "Ð "Ø Ð Ð Ð ðz2ð z2ð z2ð z2ð z2 ñ z2ô z2ð z2ð z2ð z2r   