
    J/Ph                         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    b/var/www/html/test/jupyter/venv/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	CGGIIA38__  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 	9B'"++CJ&&3C   BH$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MMs#####r   c                  v    t           j        t                   } t                                          |            d S r   )r5   r6   r/   r   r.   r7   s    r   self_runr:   @   s,    
+h
CMMS!!!!!r   )r5   numpyr   numbar   numba.tests.supportr   r   r   r   r   r8   r:   r3   r   r   <module>r>      s   



           ( ( ( ( ( ( t4     !  t4     !  D- - -    (   >$ $ $
" " " " "r   