
    sh	                         S SK r S SKrS SKJrJr  S SKJr  S SKJ	r	J
r
  S SKrS SKJr  \	" S5       " S S\
5      5       r\S	:X  a  \R                   " 5         gg)
    N)cuda	vectorize)types)skip_on_cudasimCUDATestCase)numpy_supportz!pickling not supported in CUDASIMc                   ,    \ rS rSrS rS rS rS rSrg)
TestPickle
   c                 l   [         R                  " S/5      nUS   " U5      n[        R                  " [        R                  " U5      5      nAUS   " U5      n[         R
                  R                  XS5        A[        R                  " [        R                  " U5      5      nAUS   " U5      n[         R
                  R                  Xs5        A[        R                  " [        R                  " US   5      5      nAU R                  UR                  S5        U R                  UR                  S5        g )Nd   )   r   )      )r   r   r   )r   r   r   )
nparraypickleloadsdumpstestingassert_equalassertEqualgriddimblockdim)	selfcalleearrexpectedfoo1got1foo2got2foo3s	            z/Users/tiagomarins/Projetos/claudeai/copy_bank/venv/lib/python3.13/site-packages/numba/cuda/tests/cudapy/test_serialize.py
check_callTestPickle.check_call   s    hhuo$<$ ||FLL01Dz#


/ ||FLL./Dz#


/ ||FLLd45y1	2    c                    ^ [         R                  " SS9S 5       m[         R                  " S5      U4S j5       nU R                  U5        g )NTdevicec                     U S-   $ Nr    as    r$   inner2TestPickle.test_pickling_jit_typing.<locals>.inner(       q5Lr'   zvoid(intp[:])c                 "   > T" U S   5      U S'   g Nr   r-   r   r0   s    r$   foo0TestPickle.test_pickling_jit_typing.<locals>.foo,       3q6]CFr'   r   jitr%   r   r6   r0   s     @r$   test_pickling_jit_typing#TestPickle.test_pickling_jit_typing'   sI    			 
	 
/	"	# 
#	# 	r'   c                    ^ [         R                  " SS9S 5       m[         R                  U4S j5       nU R                  U5        g )NTr)   c                     U S-   $ r,   r-   r.   s    r$   r0   +TestPickle.test_pickling_jit.<locals>.inner4   r2   r'   c                 "   > T" U S   5      U S'   g r4   r-   r5   s    r$   r6   )TestPickle.test_pickling_jit.<locals>.foo8   r8   r'   r9   r;   s     @r$   test_pickling_jitTestPickle.test_pickling_jit2   sD    			 
	 
	# 
	# 	r'   c                    [        SS/SS9S 5       n[        R                  " [        R                  5      n[
        R                  " SUS9nU" U5      n[        R                  " [        R                  " U5      5      nAU" U5      n[
        R                  R                  XF5        [        R                  " [        R                  " U5      5      nAU" U5      n[
        R                  R                  XH5        g )Nz
intp(intp)zfloat64(float64)r   )targetc                     U S-  $ )N   r-   )xs    r$   	cuda_vect5TestPickle.test_pickling_vectorize.<locals>.cuda_vect?   r2   r'   r   )dtype)r   r   as_dtyper   intpr   aranger   r   r   r   r   )	r   rJ   nptyaryr   r   r    r!   r"   s	            r$   test_pickling_vectorize"TestPickle.test_pickling_vectorize>   s    	L"45f	E	 
F	 %%ejj1ii$'S>||FLL34Cy


/||FLL./Cy


/r'   r-   N)	__name__
__module____qualname____firstlineno__r%   r<   rC   rR   __static_attributes__r-   r'   r$   r
   r
   
   s    34	
0r'   r
   __main__)r   numpyr   numbar   r   
numba.corer   numba.cuda.testingr   r   unittestnumba.npr   r
   rT   mainr-   r'   r$   <module>ra      sW      !  <  " 45F0 F0 6F0R zMMO r'   