o
    Tæ«d]  ã                   @   s   d dl Zdd„ Zdd„ ZdS )é    Nc                 C   sF   t  |¡}t| tƒr| f} t|tƒr|f}n|pt| ||ƒ}| ||fS )N)ÚnpÚdtypeÚ
isinstanceÚintÚ_fill_stride_by_order)ÚshapeÚstridesr   Úorder© r
   úf/home/ncw/WWW/www-new/content/articles/pi-bbp/venv/lib/python3.10/site-packages/numba/cuda/api_util.pyÚprepare_shape_strides_dtype   s   



r   c                 C   s¸   t | ƒ}|dkr
dS dg| }|dkr5|j|d< tt|d ƒƒD ]}||d  | |d   ||< q t|ƒS |dkrX|j|d< td|ƒD ]}||d  | |d   ||< qCt|ƒS tdƒ‚)Nr   r
   ÚCéÿÿÿÿé   ÚFzmust be either C/F order)ÚlenÚitemsizeÚreversedÚrangeÚ
ValueErrorÚtuple)r   r   r	   Úndr   Údr
   r
   r   r      s   

ú
ÿr   )Únumpyr   r   r   r
   r
   r
   r   Ú<module>   s    