+
    :i
                     z    R t ^ RIHtHt ^ RIHt ^ RIHt ^ RIH	t	 ^ RI
HtHt ^ RIHt ]R 4       t]R 4       tR	# )
zd
This file provides internal compiler utilities that support certain special
operations with numpy.
)typestyping)unpack_tuple)	intrinsic)impl_ret_new_ref)RequireLiteralValueTypingError)tuple_setitemc                   a ^ RI Ho V3R lp\        V4      p\        P                  ! VR\        P
                  R7      pV! V4      pWR3# )zA version of numpy.empty whose dtype is inferred by the type system.

Expects `shape` to be a int-tuple.

There is special logic in the type-inferencer to handle the "refine"-ing
of undefined dtype.
)_empty_nd_implc                    < VP                   pVP                  4       '       g   Q h\        W^ ,          4      pS! WWE4      p\        WWFP	                  4       4      # )    )return_type
is_preciser   r   	_getvalue)contextbuilder	signatureargsarrtyshapesresr   s   &&&&   U/var/www/html/photoedit/myenv/lib/python3.14/site-packages/numba/np/unsafe/ndarray.pycodegenempty_inferred.<locals>.codegen   sP    %%!!!!gAw/Wu=%II    C)ndimlayoutdtype)numba.np.arrayobjr   lenr   Array	undefined)	typingctxshaper   ndarray_tysigr   s   &&    @r   empty_inferredr)      s@     1J 
UB{{3eooFH
5/C<r   c                X  aa \        V\        P                  4      '       g   \        R4      hVP                  ^8w  d%   \        RP                  VP                  4      4      h\        VP                  4      o\        P                  ! VP                  SR7      oS! W4      pVV3R lpW43# )zConvert *array* into a tuple of *length*

Returns ``UniTuple(array.dtype, length)``

** Warning **
- No boundchecking.
  If *length* is longer than *array.size*, the behavior is undefined.
z$*length* argument must be a constantzNot supported on array.ndim={})r   countc                 .  < R  pVP                   ^ ,          \        P                  S.p\        P                  ! S.VO5!  pV P                  \        P                  4      pV P                  S4      pV^ ,          V! S4      V.p	V P                  WWi4      p
V
# )c                 R    Tp\        V4       F  p\        W4W,          4      pK  	  V# )N)ranger	   )arraylengthempty_tupleoutis   &&&  r   impl-to_fixed_tuple.<locals>.codegen.<locals>.impl?   s(    C6]#CEH5 #Jr   )r   r   intpr   r   get_value_typeget_constant_undefcompile_internal)r   r   r   r   r4   inner_argtypes	inner_sigll_idx_typer1   
inner_argsr   
tuple_size
tuple_types   &&&&       r   r   to_fixed_tuple.<locals>.codegen>   s    	 $..+UZZD$$ZA.A	,,UZZ800<1g{:6D
&&wiL
r   )
isinstancer   IntegerLiteralr   r   r   formatintliteral_valueUniTupler   )r$   r/   r0   r(   r   r>   r?   s   &&&  @@r   to_fixed_tuplerG   )   s     fe2233!"HIIzzQ:AA%**MNN V))*JekkDJ
U
#C" <r   N)__doc__
numba.corer   r   numba.core.cgutilsr   numba.core.extendingr   numba.core.imputilsr   numba.core.errorsr   r   numba.cpython.unsafe.tupler	   r)   rG    r   r   <module>rP      sF    % + * 0 > 4  4 % %r   