U
    |e                     @   s  d dl mZ d dlZd dlmZ d dlZd dlZd dlZd dl	m
Z
 d dlmZmZmZmZmZmZmZmZmZmZmZ d dlmZmZmZmZ d dlmZmZ d dlm Z  d d	l!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z' d d
l(m)Z) d dl*m+Z+ eej,dd Z-eej.ej/ej/dd Z0eej1ej/ej/dd Z2eej1ej3ej3dd Z4eej1ej5ej5dd Z6eej7ej8ej8eej7ej9ej9dd Z:eej;ej8ej8eej;ej9ej9dd Z<dd Z=eej7e=d eej;e=d eej>dd Z?eej/ej>eej@ej>eej5ej>d d! ZAeej>ej/eej>ej5eej>ej@d"d# ZBeejCejDejEd$d% ZFeejGejDejEej/d&d' ZHd(d) ZIeeJejKd*d+ ZLeeJeMej/d,d- ZNeeOejKd.d/ ZPeeOeMej/d0d1 ZQd2d3 ZReeSejTd4d5 ZUeeSejTejEd6d7 ZVeeWej/eeXej/d8d9 ZYeeZeMej/d:d; Z[eej\ej/d<d= Z]eej^d>d? Z_eej`d@dA Zaeej@dBdC Zbeecej/dDdE ZdeeeejfdFdG ZgeehejidHdI ZjedJej/ej/dKdL ZkeelejmdMdN ZneeoejpdOdP ZqeerdQdR ZseerejKdSdT ZteeodUdV ZueeodWdXdYdZ Zvd[d\ Zwd]d^ Zxeexej\eexejyd_d` Zzeewej\eewejydadb Z{d dcl|m}Z}m~Z~ d ddlmZmZ ee}ejejee}ejejdedf ZeeOdgdh ZeeOdidj ZeeJdkdl ZeeJdmdn Zedodp Zedqdp Zedrds ZeeOdtdu ZeeJdvdw ZeejeMej/dxdy Zeeddzd{Zeed|d} Zeed~d Zdd Zeedd Zeedd Zdd Zeedd Zedd ZeddZe Zeedddd Zeedd Zedd Zeedd Zeedd ZeedddZdS )    )
namedtupleN)reduce)ir)lower_builtinlower_getattrlower_getattr_generic
lower_castlower_constantiternext_implcall_getitercall_iternextimpl_ret_borrowedimpl_ret_untrackednumba_typeref_ctor)typingtypesutilscgutils)overload	intrinsic)
Conversion)TypingErrorLoweringErrorNumbaExperimentalFeatureWarningNumbaTypeErrorRequireLiteralValueNumbaPerformanceWarning)literal_unroll)as_numba_typec                 C   s   t | tjrdd }|S d S )Nc                 S   s   | S N valr    r    S/var/www/website-v5/atlas_env/lib/python3.8/site-packages/numba/cpython/builtins.pyimpl   s    zol_truth.<locals>.impl
isinstancer   Boolean)r"   r$   r    r    r#   ol_truth   s    r(   c                 C   s   |  tj|}||||S )z3
    Implement `x is not y` as `not (x is y)`.
    )get_functionoperatoris_not_)contextbuildersigargsZis_implr    r    r#   generic_is_not#   s    r1   c                 C   sj   |j \}}||kr`|jr&d}t|qfz| tj|}W n tk
rR   tj Y S X |||S ntjS dS )z-
    Default implementation for `x is y`
    zno default `is` implementationN)	r0   mutabler   r)   r*   eqNotImplementedErrorr   	false_bit)r-   r.   r/   r0   lhs_typerhs_typemsgeq_implr    r    r#   
generic_is,   s    

r:   c                 C   sN   |j \}}||krD||d tj}||d tj}|d||S tjS dS )z7
    Implementation for `x is y` for Opaque types.
    r      z==N)r0   ptrtointr   intp_ticmp_unsignedr5   )r-   r.   r/   r0   r6   r7   Zlhs_ptrZrhs_ptrr    r    r#   	opaque_isF   s    
r?   c                 C   sb   |\}}|j \}}| |||tj}| |||tj}	| tjttjtjtj}
|
|||	fS )z
    Implementation for `x is y` for types derived from types.Boolean
    (e.g. BooleanLiteral), and cross-checks between literal and non-literal
    booleans, to satisfy Python's behavior preserving identity for bools.
    )	r0   castr   booleanr)   r*   r3   r   	signature)r-   r.   r/   r0   arg1arg2Z	arg1_typeZ	arg2_typeZ_arg1Z_arg2r9   r    r    r#   bool_is_implV   s    
rE   c                 C   s@   |j \}}d}|j|jkrd}ttd|}t| ||j|S Nr   r;   r0   literal_valuer   ConstantIntTyper   return_typer-   r.   r/   r0   rC   rD   r"   resr    r    r#   const_eq_impli   s    
rN   c                 C   s@   |j \}}d}|j|jkrd}ttd|}t| ||j|S rF   rG   rL   r    r    r#   const_ne_implu   s    
rO   c                    s    fdd}|S )Nc                    sL   t | tj}t |tj}|r0|r0 fdd}|S ||A rH fdd}|S d S )Nc                    s    S r   r    abr!   r    r#   r$      s    z/gen_non_eq.<locals>.none_equality.<locals>.implc                    s     S r   r    rP   r!   r    r#   r$      s    r&   r   NoneType)rQ   rR   Za_noneZb_noner$   r!   r    r#   none_equality   s    z!gen_non_eq.<locals>.none_equalityr    )r"   rU   r    r!   r#   
gen_non_eq   s    rV   TFc                 C   s4   |  }| ||||}| ||}|| ||||S )z>
    Deferred.__getattr__ => redirect to the actual type.
    )getr@   get_getattr)r-   r.   typvalueattrZ
inner_typer"   impr    r    r#   deferred_getattr   s    r]   c                 C   s0   |  |||| }| j| }||| |S r   )r@   rW   data_model_managersetmake_uninitialized)r-   r.   fromtytotyr"   actualmodelr    r    r#   any_to_deferred   s    
re   c                 C   s*   | j | }|||}| ||| |S r   )r^   rW   r@   )r-   r.   ra   rb   r"   rd   r    r    r#   deferred_to_any   s    
rf   c                 C   s0   |\}}| ||g}||}t| ||j|S r   )geploadr   rK   )r-   r.   r/   r0   base_ptridxelem_ptrrM   r    r    r#   getitem_cpointer   s    
rl   c                 C   s(   |\}}}| ||g}||| d S r   )rg   store)r-   r.   r/   r0   ri   rj   r"   rk   r    r    r#   setitem_cpointer   s    
rn   c           	         sX   t |t |kst||ft |dks,t fdd}t||}t||\}}|S )Nr   c                    s   | \}}|\}}j ||}|d k	s*t |||} |||}ttj||}|}| ||f}	 	|	||}
||
fS r   )
typing_contextunify_typesAssertionErrorr@   r   rB   r   rA   r)   select)ZaccumulatorrZ   ZacctyaccZvtyvtycmpsiggepredrM   r.   cmpopr-   r    r#   binary_minmax   s    z do_minmax.<locals>.binary_minmax)lenrq   zipr   )	r-   r.   argtysr0   rz   r{   ZtypvalsrestyZresvalr    ry   r#   	do_minmax   s    
r   c                 C   s0   t |jd }t||d }t| |||tjS Nr   )listr0   r   unpack_tupler   r*   gtr-   r.   r/   r0   r~   r    r    r#   max_iterable   s    r   c                 C   s   t | ||j|tjS r   )r   r0   r*   r   r-   r.   r/   r0   r    r    r#   
max_vararg   s    r   c                 C   s0   t |jd }t||d }t| |||tjS r   )r   r0   r   r   r   r*   ltr   r    r    r#   min_iterable   s    r   c                 C   s   t | ||j|tjS r   )r   r0   r*   r   r   r    r    r#   
min_vararg   s    r   c                 C   s   d| j f S )Nzllvm.rint.f%d)bitwidth)tpr    r    r#   _round_intrinsic   s    r   c           
      C   sj   |j d }| |}|j}t||g}t||t|}|||}	|	|	| |j
}	t| ||j
|	S r   )r0   get_value_typemoduler   FunctionTyper   get_or_insert_functionr   callfptosirK   r   )
r-   r.   r/   r0   flttylltyr   fntyfnrM   r    r    r#   round_impl_unary   s    

r   c                    sN   |j d }tt|t||  fdd}| ||||}t| ||j|S )Nr   c                    s   t | st | r| S |dkrp|dkr:d|d  }d}nd| }d}| | | }t |r`| S  || | S d|  }| | } || S d S )Nr      g      $@gMDg      ?)mathisinfisnan)xndigitsZpow1Zpow2yZ_roundr    r#   round_ndigits  s    

z(round_impl_binary.<locals>.round_ndigits)	r0   r   ExternalFunctionr   r   rB   compile_internalr   rK   )r-   r.   r/   r0   r   r   rM   r    r   r#   round_impl_binary   s    
 
r   c                 C   s0   |j \}|\}| ||||j}t| ||j|S r   )r0   r@   rK   r   )r-   r.   r/   r0   ru   r"   rM   r    r    r#   int_impl$  s    r   c                 C   s   |j }|j}t|jdkrr|j\}|\}t|tjrT| ||||}t| ||j |S | ||||}	| 	|d}
n@t|jdkr|j\}}|\}	}
| ||	||}	| ||
||}
| 
||}|	|_|
|_| }t| ||j |S )Nr;   r      )rK   underlying_floatr|   r0   r&   r   Complexr@   r   get_constantmake_complexrealimag	_getvalue)r-   r.   r/   r0   complex_typeZ
float_typeargtyargrM   r   r   ZrealtyZimagtycmplxr    r    r#   complex_impl-  s(    
r   c                    sf   t |jtjrB|jj  fdd}| ||||}t| ||j|S |\}|j\}| ||||jS dS )z1
    Call a number class, e.g. np.int32(...)
    c                     s   t j|  dS )N)dtype)nparray)Zarg_hackdtr    r#   fooQ  s    znumber_constructor.<locals>.fooN)	r&   rK   r   Arrayr   r   r   r0   r@   )r-   r.   r/   r0   r   rM   r"   valtyr    r   r#   number_constructorI  s    r   c                 C   s   |   S r   get_dummy_valuer-   r.   ru   pyvalr    r    r#   constant_dummy_  s    r   c                 C   s0   |  |}| j|||t|d}|||S )N)info)get_function_pointer_typeadd_dynamic_addrget_pointerstrbitcast)r-   r.   ru   r   ptrtyZptrvalr    r    r#   constant_function_pointerd  s
    
r   c                 C   s*   |d kr|  ||jS | ||j|S d S r   )make_optional_nonetypemake_optional_valuer   r    r    r#   constant_optionall  s    r   c                 C   s   |   S )z&
    One-argument type() builtin.
    r   r   r    r    r#   	type_implv  s    r   c                 C   s    |j \}|\}t| |||}|S r   )r0   r   )r-   r.   r/   r0   ru   r"   itervalr    r    r#   	iter_impl~  s    r   c              	   C   sX   |j \}|\}t| |||}|j|| dd | j|td W 5 Q R X | S )NF)likelyr    )	r0   r   if_thenr,   is_valid	call_convreturn_user_excStopIterationyielded_value)r-   r.   r/   r0   Zitertyr   rM   r    r    r#   	next_impl  s    r   znot inc                 C   s"   dd }|  ||||}||S )Nc                 S   s   t || S r   )r*   containsrP   r    r    r#   in_impl  s    znot_in.<locals>.in_impl)r   r,   )r-   r.   r/   r0   r   rM   r    r    r#   not_in  s    r   c                 C   s0   |j \}|j}| |t|j}t| ||j|S r   )r0   rK   r   r|   r   r   )r-   r.   r/   r0   ru   rettyrM   r    r    r#   constsized_len  s    r   c                 C   s    |j \}t|rtjS tjS d S r   )r0   r|   r   true_bitr5   )r-   r.   r/   r0   ru   r    r    r#   
sized_bool  s    r   c                 C   s    |j }| |}t| ||j |S r   )rK   get_constant_undefr   )r-   r.   r/   r0   r   rM   r    r    r#   lower_empty_tuple  s    
r   c                 C   s   |\}t | ||j|S r   )r   rK   )r-   r.   r/   r0   r"   r    r    r#   lower_tuple  s    r   c                 C   s6   t jt jt jt jt jt jf}t| |r2dd }|S d S )Nc                 S   s   t | dkS r   )r|   r   r    r    r#   	bool_impl  s    z bool_sequence.<locals>.bool_impl)r   CharSeqUnicodeCharSeqDictTypeListTypeUnicodeTypeSetr&   )r   Zvalid_typesr   r    r    r#   bool_sequence  s    	
r   always)inlinec                 C   s    t | tjs| d krdd S d S )Nc                 S   s   dS NFr    r   r    r    r#   <lambda>      zbool_none.<locals>.<lambda>rS   r   r    r    r#   	bool_none  s    r   c                 C   s0   t | tjrtjS t | tjr$| jS tdd S NzUnsupported type)r&   r   Floatr   infIntegermaxvalr4   rY   r    r    r#   get_type_max_value  s
    r   c                 C   s2   t | tjrtj S t | tjr&| jS tdd S r   )r&   r   r   r   r   r   minvalr4   r   r    r    r#   get_type_min_value  s
    r   c           
      C   s   |j d j}t|tjr<|j}t|}|j}t	||}nt|tj
r|j}|dkr`t }n|dkrrt }ntdttd|}	t	|tj }n8t|tjtjfrd}t|}tjjd }t	||}t| |||S )Nr       @   +llvmlite only supports 32 and 64 bit floatsfloat{}r;   )r0   r   r&   r   r   r   r   rJ   r   rI   r   	FloatType
DoubleTyper4   getattrr   formatr   
NPDatetimeNPTimedeltaint64r   
r-   r.   r/   r0   rY   Zbwltyr"   rM   Znptyr    r    r#   lower_get_type_min_value  s*    



r  c           
      C   s   |j d j}t|tjr<|j}t|}|j}t	||}nt|tj
r|j}|dkr`t }n|dkrrt }ntdttd|}	t	|tj}n4t|tjtjfrd}t|}tjj}t	||}t| |||S )Nr   r   r   r   r   )r0   r   r&   r   r   r   r   rJ   r   rI   r   r   r   r4   r  r   r  r   r  r  r  r   r  r    r    r#   lower_get_type_max_value  s*    



r	  )
IndexValueIndexValueType)r   register_jitablec                 C   s2   |j }|\}}t|| |}||_||_| S r   )rK   r   create_struct_proxyindexrZ   r   )r-   r.   r/   r0   rY   r  rZ   Zindex_valuer    r    r#   impl_index_value  s    r  c                 C   s$   t | tr t |tr dd }|S d S )Nc                 S   sx   t | jr4t |jr.| j|jk r(| S |S qt| S n@t |jrD|S | j|jkrT|S | j|jkrt| j|jk rp| S |S | S r   r   r   rZ   r  indval1indval2r    r    r#   min_impl*  s    zindval_min.<locals>.min_implr&   r  )r  r  r  r    r    r#   
indval_min&  s
    
r  c                 C   s(   t | tjr$t |tjr$dd }|S d S )Nc                 S   s   | o|S r   r    val1val2r    r    r#   bool_min_implG  s    z"boolval_min.<locals>.bool_min_implr%   )r  r  r  r    r    r#   boolval_minC  s
    
r  c                 C   s$   t | tr t |tr dd }|S d S )Nc                 S   sx   t | jr4t |jr.| j|jk r(| S |S qt| S n@t |jrD|S |j| jkrT|S | j|jkrt| j|jk rp| S |S | S r   r  r  r    r    r#   max_implP  s    zindval_max.<locals>.max_implr  )r  r  r  r    r    r#   
indval_maxL  s
    
r  c                 C   s(   t | tjr$t |tjr$dd }|S d S )Nc                 S   s   | p|S r   r    r  r    r    r#   bool_max_implm  s    z"boolval_max.<locals>.bool_max_implr%   )r  r  r  r    r    r#   boolval_maxi  s
    
r  c                 C   s   | |kS r   r    rP   r    r    r#   r   r  r   r   c                 C   s   | |k S r   r    rP   r    r    r#   r   s  r   c                    s    t | tjr fdd}|S d S )Nc                    s,   t | }t|}|D ]} ||r|}q|S r   )iternext)iterableit
return_valr"   opr    r#   r$   y  s    
zmin_max_impl.<locals>.impl)r&   r   IterableType)r"  r&  r$   r    r%  r#   min_max_implv  s    r(  c                 C   s
   t | tS r   )r(  	less_thanr"  r    r    r#   iterable_min  s    r+  c                 C   s
   t | tS r   )r(  greater_thanr*  r    r    r#   iterable_max  s    r-  c                 C   sz   |j }dd }tj|j}t|t||}t|dkrT| 	 | 
|||f}n| 	 | 
||df}| ||||S )ae  Redirect constructor implementation to `numba_typeref_ctor(cls, *args)`,
    which should be overloaded by the type's implementation.

    For example:

        d = Dict()

    `d` will be typed as `TypeRef[DictType]()`.  Thus, it will call into this
    implementation.  We need to redirect the lowering to a function
    named ``numba_typeref_ctor``.
    c                 W   s   t | f| S r   )r   )clsr0   r    r    r#   	call_ctor  s    z%redirect_type_ctor.<locals>.call_ctorr   r    )rK   r   Tuple
from_typesr0   r   rB   TypeRefr|   r   
make_tupler   )r-   r.   r/   r0   r.  r/  Z	ctor_argsr    r    r#   redirect_type_ctor  s    r4  c                    s   d }t |tjrd}n"t |tjr(d}nt |tjr8d}|d k	rRdj| }t|t | tjjtj	tj
tjtjfrxt nt | tjjrt nd S d fdd	}|S )	N)strings )bytesrR   )	bytearrayrR   z/sum() can't sum {} [use {}''.join(seq) instead]r   c                    s   |} | D ]}|| }q|S r   r    )r"  startrs   r   iteratorr    r#   r$     s    
zol_sum.<locals>.impl)r   )r&   r   r   Bytes	ByteArrayr  r   
containers_HomogeneousTupleListr   r   	RangeTyper   _HeterogeneousTupler   )r"  r9  errorr8   r$   r    r:  r#   ol_sum  s*    
  rD  c                 G   s   dd }|S )Nc                 w   s"   t |f| D ]}| | V  qd S r   )r}   )funcr"  r0   r   r    r    r#   r$     s    zol_map.<locals>.implr    )rE  r"  r0   r$   r    r    r#   ol_map  s    rF  c                 C   s*   | d kst | tjrdd }ndd }|S )Nc                 s   s   |D ]}|r|V  qd S r   r    rE  r"  r   r    r    r#   r$     s    zol_filter.<locals>.implc                 s   s   |D ]}| |r|V  qd S r   r    rG  r    r    r#   r$     s    rS   )rE  r"  r$   r    r    r#   	ol_filter  s    
rH  c                 C   s   d S r   r    vartypsr    r    r#   _isinstance_no_warn  s    rL  c                 C   s   d}t j|td t| |S )Nz>Use of isinstance() detected. This is an experimental feature.)category)warningswarnr   ol_isinstance_no_warn)rJ  rK  r8   r    r    r#   ol_isinstance  s    rQ  c                 C   s4  dd }dd }t | }t|tjr8d| d}t|tjtjtjtjtj	tj
tjtjtjtjtjtjtjtjtjtjf}t||sd| d}t||}t|tjr|jd	 }t|tjs|f}|D ]b}t|tjr|jd	 }	nt|tjr|}	n|j}	ttjttjttjtj	fttj
ttjttji}
|	|
krPt||
|	 r|  S qt|tjr|	tjtjfkr|d
}t|t||	kr|n|  S t |	}||kr|  S t|tjrt|tjr|j|jjkr|  S t|tj r|jd	 tj!krt||j"s&t|tjrt|tjr|  S q|S )Nc                 S   s   dS )NTr    rI  r    r    r#   	true_impl  s    z(ol_isinstance_no_warn.<locals>.true_implc                 S   s   dS r   r    rI  r    r    r#   
false_impl  s    z)ol_isinstance_no_warn.<locals>.false_implz1isinstance cannot handle optional types. Found: ""z1isinstance() does not support variables of type "z".r   zLNumba type classes (except numba.typed.* container types) are not supported.)#r   r&   r   Optionalr   Numberr<  rA  r   LiteralStrKeyDictr@  r   r0  UniTupler   Function	ClassTyper   ClassInstanceTyperT   r   keyr7  rangedictr   tuple	BaseTupler_   r2  r   instance_type	Container	undefined	__class__)rJ  rK  rR  rS  Zvar_tyr8   Zsupported_var_tyZt_typsrY   r\  Ztypes_not_registeredZ	numba_typr    r    r#   rP    s             


   
   





rP  c                 C   s   d S r   r    objnamer    r    r#   _getattr_raise_attr_exc[  s    rh  c                    s<   t |tjstd|j}d|  d| d  fdd}|S )N(argument 'name' must be a literal string'z' has no attribute 'c                    s   t  d S r   )AttributeErrorre  messager    r#   r$   h  s    z(ol__getattr_raise_attr_exc.<locals>.impl)r&   r   StringLiteralr   rH   )rf  rg  lnamer$   r    rl  r#   ol__getattr_raise_attr_exca  s    rp  c                    s  t |tjstd|j| t tjrRd d d d}t|d krt tjrpj	t
ks|}fdd}n8| t| |fi t|}fdd}nF|}t tjrfd	d}n|   fd
d}||fS )Nri  zQReturning function objects is not implemented. getattr() was requested to return z from attribute 'z' of .c                    s   |d }| j | | |S N)nrtincref)cgctxr.   r/   llargstmp)defaultr    r#   r$     s    zresolve_getattr.<locals>.implc                    s   |   }|||d d S rr  )r)   )rv  r.   r/   rw  Znative_impl)r   	raise_sigr    r#   r$     s    c                    s<    j }| ||d |}| |||}| j| | |S r   )thisr@   get_bound_functionrt  ru  )rv  r.   r/   ll_argsZ	cast_typecastedrM   )r   rf  r    r#   r$     s
    c                    sD   |  }|| ||d }| || }| j|| |S r   )rX   r@   rt  ru  )rv  r.   r/   r}  Z	attr_implrM   r~  )attrtyr   ro  rf  r    r#   r$     s
    )r&   r   rn  r   rH   resolve_getattrrY  r   
NamedTupleinstance_class_getattr_default_typeresolve_value_typerh  get_call_typenoneBoundFunction)tyctxrf  rg  ry  r8   r/   r$   r    )r  ry  r   r   ro  rf  rz  r#   r  m  s.    
	r  r  r6  )prefer_literalc                 C   s   dd }|S )Nc                 S   s   t | |tS r   )r  _getattr_defaultre  r    r    r#   r$     s    zol_getattr_2.<locals>.implr    rf  rg  r$   r    r    r#   ol_getattr_2  s    r  c                 C   s   dd }|S )Nc                 S   s   t | ||S r   )r  )rf  rg  ry  r    r    r#   r$     s    zol_getattr_3.<locals>.implr    )rf  rg  ry  r$   r    r    r#   ol_getattr_3  s    r  c                    sb   t |tjstd|j}| ||  d kr:td}n
td}|||} fdd}||fS )Nri  FTc                    s    d krt jS t jS r   )r   r5   r   )rv  r.   r/   r}  r   r    r#   r$     s    zresolve_hasattr.<locals>.impl)r&   r   rn  r   rH   r  literal)r  rf  rg  ro  r   r/   r$   r    r  r#   resolve_hasattr  s    

r  c                 C   s   dd }|S )Nc                 S   s
   t | |S r   )r  re  r    r    r#   r$     s    zol_hasattr.<locals>.implr    r  r    r    r#   
ol_hasattr  s    r  c                    s   d|  d  fdd}|S )Nz<object type:>c                    s&   d}t | |dkrt| | S  S d S )N__repr__T)hasattrr  )rf  r[   Zmissing_repr_formatr    r#   r$     s    zol_repr_generic.<locals>.implr    )rf  r$   r    r  r#   ol_repr_generic  s    r  c                 C   s   ddd}|S )Nr6  c                 S   s*   d}t | |dkrt| | S t| S d S )N__str__T)r  r  repr)objectr[   r    r    r#   r$     s    zol_str_generic.<locals>.impl)r6  r    )r  r$   r    r    r#   ol_str_generic  s    
r  )r   )r6  )collectionsr   r   	functoolsr   numpyr   r*   rN  llvmliter   numba.core.imputilsr   r   r   r   r	   r
   r   r   r   r   r   
numba.corer   r   r   r   numba.core.extendingr   r   numba.core.typeconvr   numba.core.errorsr   r   r   r   r   r   numba.misc.specialr   numba.core.typing.asnumbatyper   truthr(   is_notAnyr1   r+   r:   Opaquer?   r'   rE   r3   LiteralIntegerLiteralrN   nerO   rV   DeferredTyper]   rU  re   rf   getitemCPointerr   rl   setitemrn   r   maxr`  r   VarArgr   minr   r   r   roundr   r   r   intfloatr   complexr   NumberClassr   Dummyr   ExternalFunctionPointerr   r   r   r   r   r'  r   r!  IteratorTyper   r   r|   
ConstSizedr   boolSizedr   r_  r   r   r   r   r   r   DTyper  r	  Znumba.core.typing.builtinsr
  r  Znumba.extendingr  intpTypeuintpr  r  r  r  r  r,  r)  r(  r+  r-  r2  r4  sumrD  maprF  filterrH  rL  r&   rQ  rP  rh  rp  r  r  r  r  r  r  r  r  r  r  r  r   r  r    r    r    r#   <module>   s4  4 





	
	










%






	





















	







'



a

9







