+
    }i(                         R t ^ RIHtHtHtHtHtHtHtH	t	H
t
HtHtHtHtHtHt ^ RIHt ]! R4       ! R R4      4       tR# )z
Array API Inspection namespace

This is the namespace for inspection functions as defined by the array API
standard. See
https://data-apis.org/array-api/latest/API_specification/inspection.html for
more details.

)bool	complex64
complex128dtypefloat32float64int8int16int32int64intpuint8uint16uint32uint64)
set_modulenumpyc                   V   a  ] tR t^t o RtR tR tRR/R ltRRRR/R ltR	 t	R
t
V tR# )__array_namespace_info__aO  
Get the array API inspection namespace for NumPy.

The array API inspection namespace defines the following functions:

- capabilities()
- default_device()
- default_dtypes()
- dtypes()
- devices()

See
https://data-apis.org/array-api/latest/API_specification/inspection.html
for more details.

Returns
-------
info : ModuleType
    The array API inspection namespace for NumPy.

Examples
--------
>>> info = np.__array_namespace_info__()
>>> info.default_dtypes()
{'real floating': numpy.float64,
 'complex floating': numpy.complex128,
 'integral': numpy.int64,
 'indexing': numpy.int64}

c                    RRRRR^@/# )a  
Return a dictionary of array API library capabilities.

The resulting dictionary has the following keys:

- **"boolean indexing"**: boolean indicating whether an array library
  supports boolean indexing. Always ``True`` for NumPy.

- **"data-dependent shapes"**: boolean indicating whether an array
  library supports data-dependent output shapes. Always ``True`` for
  NumPy.

See
https://data-apis.org/array-api/latest/API_specification/generated/array_api.info.capabilities.html
for more details.

See Also
--------
__array_namespace_info__.default_device,
__array_namespace_info__.default_dtypes,
__array_namespace_info__.dtypes,
__array_namespace_info__.devices

Returns
-------
capabilities : dict
    A dictionary of array API library capabilities.

Examples
--------
>>> info = np.__array_namespace_info__()
>>> info.capabilities()
{'boolean indexing': True,
 'data-dependent shapes': True,
 'max dimensions': 64}

zboolean indexingTzdata-dependent shapeszmax dimensions selfs   &g/Users/ahmad/.openclaw/workspace/my-crawler/.venv/lib/python3.14/site-packages/numpy/_array_api_info.pycapabilities%__array_namespace_info__.capabilities?   s    N #Tb
 	
    c                    R# )a  
The default device used for new NumPy arrays.

For NumPy, this always returns ``'cpu'``.

See Also
--------
__array_namespace_info__.capabilities,
__array_namespace_info__.default_dtypes,
__array_namespace_info__.dtypes,
__array_namespace_info__.devices

Returns
-------
device : str
    The default device used for new NumPy arrays.

Examples
--------
>>> info = np.__array_namespace_info__()
>>> info.default_device()
'cpu'

cpur   r   s   &r   default_device'__array_namespace_info__.default_devicek   s    2 r   deviceNc          
         VR9  d   \        RV 24      hR\        \        4      R\        \        4      R\        \        4      R\        \        4      /# )a{  
The default data types used for new NumPy arrays.

For NumPy, this always returns the following dictionary:

- **"real floating"**: ``numpy.float64``
- **"complex floating"**: ``numpy.complex128``
- **"integral"**: ``numpy.intp``
- **"indexing"**: ``numpy.intp``

Parameters
----------
device : str, optional
    The device to get the default data types for. For NumPy, only
    ``'cpu'`` is allowed.

Returns
-------
dtypes : dict
    A dictionary describing the default data types used for new NumPy
    arrays.

See Also
--------
__array_namespace_info__.capabilities,
__array_namespace_info__.default_device,
__array_namespace_info__.dtypes,
__array_namespace_info__.devices

Examples
--------
>>> info = np.__array_namespace_info__()
>>> info.default_dtypes()
{'real floating': numpy.float64,
 'complex floating': numpy.complex128,
 'integral': numpy.int64,
 'indexing': numpy.int64}

<Device not understood. Only "cpu" is allowed, but received: real floatingcomplex floatingintegralindexingr   N)
ValueErrorr   r   r   r   )r   r!   s   &$r   default_dtypes'__array_namespace_info__.default_dtypes   sZ    P &8 
 U7^j 1dd	
 	
r   kindc                  VR9  d   \        RV 24      hVf   R\        \        4      R\        \        4      R\        \        4      R\        \
        4      R\        \        4      R\        \        4      R\        \        4      R	\        \        4      R
\        \        4      R\        \        4      R\        \        4      R\        \        4      R\        \        4      /# VR8X  d	   R\        /# VR8X  d?   R\        \        4      R\        \        4      R\        \
        4      R\        \        4      /# VR8X  d?   R\        \        4      R\        \        4      R	\        \        4      R
\        \        4      /# VR8X  d{   R\        \        4      R\        \        4      R\        \
        4      R\        \        4      R\        \        4      R\        \        4      R	\        \        4      R
\        \        4      /# VR8X  d!   R\        \        4      R\        \        4      /# VR8X  d!   R\        \        4      R\        \        4      /# VR8X  d   R\        \        4      R\        \        4      R\        \
        4      R\        \        4      R\        \        4      R\        \        4      R	\        \        4      R
\        \        4      R\        \        4      R\        \        4      R\        \        4      R\        \        4      /# \        V\         4      '       d/   / pV F$  pVP#                  V P%                  VR7      4       K&  	  V# \        RV: 24      h)a  
The array API data types supported by NumPy.

Note that this function only returns data types that are defined by
the array API.

Parameters
----------
device : str, optional
    The device to get the data types for. For NumPy, only ``'cpu'`` is
    allowed.
kind : str or tuple of str, optional
    The kind of data types to return. If ``None``, all data types are
    returned. If a string, only data types of that kind are returned.
    If a tuple, a dictionary containing the union of the given kinds
    is returned. The following kinds are supported:

    - ``'bool'``: boolean data types (i.e., ``bool``).
    - ``'signed integer'``: signed integer data types (i.e., ``int8``,
      ``int16``, ``int32``, ``int64``).
    - ``'unsigned integer'``: unsigned integer data types (i.e.,
      ``uint8``, ``uint16``, ``uint32``, ``uint64``).
    - ``'integral'``: integer data types. Shorthand for ``('signed
      integer', 'unsigned integer')``.
    - ``'real floating'``: real-valued floating-point data types
      (i.e., ``float32``, ``float64``).
    - ``'complex floating'``: complex floating-point data types (i.e.,
      ``complex64``, ``complex128``).
    - ``'numeric'``: numeric data types. Shorthand for ``('integral',
      'real floating', 'complex floating')``.

Returns
-------
dtypes : dict
    A dictionary mapping the names of data types to the corresponding
    NumPy data types.

See Also
--------
__array_namespace_info__.capabilities,
__array_namespace_info__.default_device,
__array_namespace_info__.default_dtypes,
__array_namespace_info__.devices

Examples
--------
>>> info = np.__array_namespace_info__()
>>> info.dtypes(kind='signed integer')
{'int8': numpy.int8,
 'int16': numpy.int16,
 'int32': numpy.int32,
 'int64': numpy.int64}

r#   r   r   r	   r
   r   r   r   r   r   r   r   r   r   zsigned integerzunsigned integerr&   r$   r%   numeric)r,   zunsupported kind: r(   )r)   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   
isinstancetupleupdatedtypes)r   r!   r,   resks   &$$  r   r2   __array_namespace_info__.dtypes   s   n &8  <dduuuu%-%-%-5>5>U9-eJ/  6>D>!##duuu	  %%u%-%-%-	  :duuuu%-%-%-	 	 ?"5>5>  %%U9-eJ/  9duuuu%-%-%-5>5>U9-eJ/  dE""C

4;;A;./ J-dX677r   c                    R.# )a  
The devices supported by NumPy.

For NumPy, this always returns ``['cpu']``.

Returns
-------
devices : list of str
    The devices supported by NumPy.

See Also
--------
__array_namespace_info__.capabilities,
__array_namespace_info__.default_device,
__array_namespace_info__.default_dtypes,
__array_namespace_info__.dtypes

Examples
--------
>>> info = np.__array_namespace_info__()
>>> info.devices()
['cpu']

r   r   r   s   &r   devices __array_namespace_info__.devicesA  s    2 wr   r   )__name__
__module____qualname____firstlineno____doc__r   r   r*   r2   r7   __static_attributes____classdictcell__)__classdict__s   @r   r   r      sC     >*
X62
t 2
hE8t E8$ E8N r   r   N)r=   numpy._corer   r   r   r   r   r   r   r	   r
   r   r   r   r   r   r   numpy._utilsr   r   r   r   r   <module>rC      sI       " $ G{ { {r   