
    sh0                        S SK r S SKJr  S SKJrJr  S SKJr  S SKJ	r	  S SK
JrJrJr  \" 5       r\ R                  " \\5      r\" \5       " S S\R"                  5      5       r\" \5       " S	 S
\R&                  5      5       r\" \	R*                  5       " S S\R&                  5      5       r\" \5      " \R.                  5        g)    N)ir)DataModelManagerregister)models)types)Dim3	GridGroupCUDADispatcherc                   (   ^  \ rS rSrU 4S jrSrU =r$ )	Dim3Model   c                    > S[         R                  4S[         R                  4S[         R                  4/n[        TU ]  XU5        g )Nxyz)r   int32super__init__)selfdmmfe_typemembers	__class__s       e/Users/tiagomarins/Projetos/claudeai/copy_bank/venv/lib/python3.13/site-packages/numba/cuda/models.pyr   Dim3Model.__init__   s?    %++%++%++

 	w/     __name__
__module____qualname____firstlineno__r   __static_attributes____classcell__r   s   @r   r   r      s    0 0r   r   c                   (   ^  \ rS rSrU 4S jrSrU =r$ )GridGroupModel   c                 R   > [         R                  " S5      n[        TU ]  XU5        g )N@   )r   IntTyper   r   r   r   r   be_typer   s       r   r   GridGroupModel.__init__   s    **R.w/r   r   r   r%   s   @r   r'   r'      s    0 0r   r'   c                   (   ^  \ rS rSrU 4S jrSrU =r$ )
FloatModel"   c                 B  > U[         R                  :X  a  [        R                  " S5      nO_U[         R                  :X  a  [        R
                  " 5       nO5U[         R                  :X  a  [        R                  " 5       nO[        U5      e[        [        U ]/  XU5        g )Nr   )r   float16r   r+   float32	FloatTypefloat64
DoubleTypeNotImplementedErrorr   r0   r   r,   s       r   r   FloatModel.__init__$   sf    emm#jjnG%llnG%mmoG%g..j$(w?r   r   r   r%   s   @r   r0   r0   "   s    	@ 	@r   r0   )	functoolsllvmliter   numba.core.datamodel.registryr   r   numba.core.extendingr   
numba.corer   numba.cuda.typesr   r	   r
   cuda_data_managerpartialregister_modelStructModelr   PrimitiveModelr'   Floatr0   OpaqueModelr   r   r   <module>rG      s      D '  < < %& ""8->? 0"" 0 0 	0V** 0 0 
@&& 
@ 
@ ~ v11 2r   