o
    1&i@                     @   s   d Z ddlmZmZ ddlmZ ddlmZ dZedddd	 Z	d
d Z
dd Zeedddd Zdd Zeejfdddd Zeejfdddd Zdd Zdd Zedd ZdS )z0 Test cases for inlining IR from another module     )jitnjit)typesoverloadd   alwaysinlinec                   C      t d S N
   _GLOBAL1 r   r   HC:\wamp64\www\opt\env\Lib\site-packages\numba/tests/inlining_usecases.pybar	      r   c                    s$   d  t dd fdd}|S )N   r   r	   c                         t    S Nr   r   abr   r   baz      zbaz_factory.<locals>.baz)r   )r   r   r   r   r   baz_factory   s   r   c                   C   r   r   r   r   r   r   r   r         r   c                  C   s   dd } | S )Nc                   S   r   r   r   r   r   r   r   impl   r   zbaz_ol.<locals>.implr   r   r   r   r   baz_ol   s   r    c                    s4   d   fdd}t |dd fdd}|S )Nr   c                      r   r   r   r   r   r   r   bop%      zbop_factory.<locals>.bopr   r	   c                     s    fdd} | S )Nc                      r   r   r   r   r   r   r   r   *   r"   z&bop_factory.<locals>.baz.<locals>.implr   r   r   r   r   r   (   s   zbop_factory.<locals>.bazr   )r   r!   r   r   r   r   bop_factory"   s
   
r#   T)Znopythonc                 C   s   | d S )N   r   r   r   r   r   inner1   r   r&   c                 C   s   t t | S r   r&   r%   r   r   r   more6   r   r(   c                 C   s   t | d S )N   r'   r%   r   r   r   outer_simple;   r"   r*   c                 C   s   t | t|  S r   )r&   r(   r%   r   r   r   outer_multiple?   s   r+   c                   C   s   d S r   r   r   r   r   r   	__dummy__C   s   r,   N)__doc__Znumbar   r   Z
numba.corer   Znumba.core.extendingr   r   r   r   r   r    r#   Zint32r&   r(   r*   r+   r,   r   r   r   r   <module>   s(    
	



