
    sh                     R   S r SSKrSSKJr  SSKJr  \" \R                  \R                  45      S 5       r\S 5       r\" SS9S	 5       r	\" SS9S
 5       r
S rSrSSKJr  S r\" SS9S 5       r\" SS9S 5       rSSKrSSKJr  \" SS9S 5       rS rS rS r\" SS9r\" SS9rg)z_
Separate module with function samples for serialization tests,
to avoid issues with __main__.
    Njit)typesc                 
    X-   $ N abs     r/Users/tiagomarins/Projetos/claudeai/copy_bank/venv/lib/python3.13/site-packages/numba/tests/serialize_usecases.pyadd_with_sigr      	    5L    c                 
    X-   $ r   r   r	   s     r   add_without_sigr      r   r   Tnopythonc                 
    X-   $ r   r   r	   s     r   add_nopythonr      r   r   c                     [        5         X-   $ r   )objectr	   s     r   add_nopython_failr      s    
H5Lr   c                 ,   ^  [        SS9U 4S j5       nU$ )NTr   c                    > TU -   U-   $ r   r   )r   cr
   s     r   innerclosure.<locals>.inner   s    1uqyr   r   )r
   r   s   ` r   closurer      s    $ Lr   g      @)sqrtc                 0   ^  [        S0 UD6U 4S j5       nU$ )Nc                 x   > [        [        [        S-   5      n[        R                  " TU 5      [	        U5      -   $ )N   )maxKmathhypotr   )ykxs     r   r   #closure_with_globals.<locals>.inner(   s0     1q5M zz!Q$q'))r   r   r   )r)   jit_argsr   s   `  r   closure_with_globalsr,   '   s"    _8_* * Lr   c                 .    [         R                  " X5      $ r   r%   r&   )r)   r'   s     r   other_functionr/   1   s    ::ar   )forceobjc                     [         U -  $ r   )r$   r)   s    r   get_global_objmoder3   5   s    q5Lr   c                     [         R                  " S5        [        R                  " U 5      [         R                  " 5       4$ )N*   )nprandseednpcosrandomr2   s    r   get_renamed_moduler;   <   s&    
KKO66!9fmmo%%r   c                 ,   ^  [        SS9U 4S j5       nU$ )NTr   c                 "   > [        TU 5      U-   $ r   )r/   )r'   zr)   s     r   r   -closure_calling_other_function.<locals>.innerC   s    a#a''r   r   )r)   r   s   ` r   closure_calling_other_functionr@   B   s    $( (Lr   c                 T   ^ ^ [        SS9U 4S j5       m[        SS9UU 4S j5       nU$ )NTr   c                 2   > [         R                  " TU 5      $ r   r.   )r'   r)   s    r   other_inner2closure_calling_other_closure.<locals>.other_innerI   s    zz!Qr   c                    > T" U 5      T-   $ r   r   )r'   rC   r)   s    r   r   ,closure_calling_other_closure.<locals>.innerM   s    1~!!r   r   )r)   r   rC   s   ` @r   closure_calling_other_closurerG   H   s8    $    	$" "Lr   c                  f    Sn0 n[        UR                  5       U5        [        S0 U D6" US   5      $ )Nz
        def dyn_func(x):
            res = 0
            for i in range(x):
                res += x
            return res
        dyn_funcr   )execstripr   )r+   codenss      r   _get_dyn_funcrN   T   s5    D 
Br??2j>**r   )__doc__r%   numbar   
numba.corer   int32r   r   r   r   r   r$   r   r,   r/   r3   numpyr8   numpy.randomr:   r6   r;   r@   rG   rN   rI   dyn_func_objmoder   r   r   <module>rV      s  
    ekk5;;  !   d  d    d  d   d& &

+ $' $/ r   