§
    ƒÛgò  ã                   óØ   — d dl Z d dlZd dlmZ d dlmZ  edd¬¦  «        d„ ¦   «         Z edd¬¦  «        d„ ¦   «         Z ed¬¦  «        d	„ ¦   «         Z	 G d
„ de¦  «        Z
d„ Zd„ ZdS )é    N)Únjit)ÚTestCaseT)ÚparallelÚcachec                 ó0   — | |                       ¦   «         z  S ©N)Úsum©Úarrs    úX/granary/edev/quantum/lib/python3.11/site-packages/numba/tests/parfors_cache_usecases.pyÚarrayexprs_caser   	   s   € à�—’‘”‰?Ðó    c                 ó¦   — t          j        | ¦  «        }d|                      ¦   «         z  }t          | j        ¦  «        D ]}| |         |z  ||<   Œ|S )Né   )ÚnpÚ
zeros_liker	   ÚrangeÚsize)r   ÚoutÚcÚis       r   Úprange_caser      sQ   € å
Œ-˜Ñ
Ô
€CØ	ˆC�GŠG‰IŒI‰€AÝ�3”8‰_Œ_ð ð ˆØ�Q”˜!‘ˆˆA‰ˆØ€Jr   )r   c                 ó:   — t          t          | ¦  «        ¦  «        S r   )r   r   r
   s    r   Úcaller_caser      s   € å• sÑ+Ô+Ñ,Ô,Ð,r   c                   ó   — e Zd ZdZd„ Zd„ ZdS )Ú_TestModulez¥
    Tests for functionality of this module's functions.
    Note this does not define any "test_*" method, instead check_module()
    should be called by hand.
    c                 ó@  — d}|j         |j        |j        fD ]n}t          j        d¦  «        }t          j                              ||¦  «        |                     |¦  «        ¦  «         |t          |j	        j
        ¦  «        z  }Œo|                      |dd¬¦  «         d S )Nr   é   z*At least one dispatcher has used the cache)Úmsg)r   r   r   r   ÚonesÚtestingÚassert_allcloseÚpy_funcÚlenÚstatsÚ
cache_hitsÚassertGreater)ÚselfÚmodÚtotal_cache_hitsÚfnr   s        r   Úcheck_modulez_TestModule.check_module"   s¯   € ØÐØÔ&¨¬¸¼ÐIð 	9ð 	9ˆBÝ”'˜"‘+”+ˆCÝŒJ×&Ò&Ø��3‘”˜Ÿš C™œñô ð ð ¥ B¤HÔ$7Ñ 8Ô 8Ñ8ÐÐØ×ÒØ˜aØ<ð 	ñ 	
ô 	
ð 	
ð 	
ð 	
r   c                 óÔ   — |j         |j        |j        fD ]R}t          j        d¦  «        }t          j                              ||¦  «        |                     |¦  «        ¦  «         ŒSd S )Nr   )r   r   r   r   r    r!   r"   r#   )r(   r)   r+   r   s       r   Ú
run_modulez_TestModule.run_module0   sn   € ð Ô&¨¬¸¼ÐIð 	ð 	ˆBÝ”'˜"‘+”+ˆCÝŒJ×&Ò&Ø��3‘”˜Ÿš C™œñô ð ð ð	ð 	r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r,   r.   © r   r   r   r      s<   € € € € € ðð ð

ð 
ð 
ðð ð ð ð r   r   c                  óv   — t           j        t                   } t          ¦   «                              | ¦  «         d S r   )ÚsysÚmodulesr/   r   r,   ©r)   s    r   Ú	self_testr8   ;   s,   € Ý
Œ+•hÔ
€CÝ�M„M×Ò˜sÑ#Ô#Ð#Ð#Ð#r   c                  óv   — t           j        t                   } t          ¦   «                              | ¦  «         d S r   )r5   r6   r/   r   r.   r7   s    r   Úself_runr:   @   s,   € Ý
Œ+•hÔ
€CÝ�M„M×Ò˜SÑ!Ô!Ð!Ð!Ð!r   )r5   Únumpyr   Únumbar   Únumba.tests.supportr   r   r   r   r   r8   r:   r3   r   r   ú<module>r>      s  ðØ 
€
€
€
à Ð Ð Ð à Ð Ð Ð Ð Ð Ø (Ð (Ð (Ð (Ð (Ð (ð €ˆt˜4Ð Ñ Ô ðð ñ !Ô ðð €ˆt˜4Ð Ñ Ô ðð ñ !Ô ðð €ˆDÐÑÔð-ð -ñ Ôð-ðð ð ð ð �(ñ ô ð ð>$ð $ð $ð
"ð "ð "ð "ð "r   