
    -Phr                        d dl Z d dlmZmZ eZdZdZh dZe j        	                    dd e
                                                    d          D                       d	             Ze j        	                    dd
 e
                                                    d          D                       d             Zd ZdS )    N)DEFAULT_LINKS	make_xrefa\
  
(...) array_like, float, optional
(...) :term:`numpy:array_like`, :class:`python:float`, optional

(2,) ndarray
(2,) :obj:`ndarray <numpy.ndarray>`

(...,M,N) array_like
(...,M,N) :term:`numpy:array_like`

(..., M, N) array_like
(..., :obj:`M`, :obj:`N`) :term:`numpy:array_like`

(float, float), optional
(:class:`python:float`, :class:`python:float`), optional

1-D array or sequence
1-D :obj:`array <numpy.ndarray>` or :term:`python:sequence`

array of str or unicode-like
:obj:`array <numpy.ndarray>` of :class:`python:str` or unicode-like

array_like of float
:term:`numpy:array_like` of :class:`python:float`

bool or callable
:ref:`bool <python:bltin-boolean-values>` or :func:`python:callable`

int in [0, 255]
:class:`python:int` in [0, 255]

int or None, optional
:class:`python:int` or :data:`python:None`, optional

list of str or array_like
:class:`python:list` of :class:`python:str` or :term:`numpy:array_like`

sequence of array_like
:term:`python:sequence` of :term:`numpy:array_like`

str or pathlib.Path
:class:`python:str` or :obj:`pathlib.Path`

{'', string}, optional
{'', :class:`python:str`}, optional

{'C', 'F', 'A', or 'K'}, optional
{'C', 'F', 'A', or 'K'}, optional

{'linear', 'lower', 'higher', 'midpoint', 'nearest'}
{'linear', 'lower', 'higher', 'midpoint', 'nearest'}

{False, True, 'greedy', 'optimal'}
{:data:`python:False`, :data:`python:True`, 'greedy', 'optimal'}

{{'begin', 1}, {'end', 0}}, {string, int}
{{'begin', 1}, {'end', 0}}, {:class:`python:str`, :class:`python:int`}

callable f'(x,*args)
:func:`python:callable` f'(x,*args)

callable ``fhess(x, *args)``, optional
:func:`python:callable` ``fhess(x, *args)``, optional

spmatrix (format: ``csr``, ``bsr``, ``dia`` or coo``)
:obj:`spmatrix` (format: ``csr``, ``bsr``, ``dia`` or coo``)

:ref:`strftime <strftime-strptime-behavior>`
:ref:`strftime <strftime-strptime-behavior>`

callable or :ref:`strftime <strftime-strptime-behavior>`
:func:`python:callable` or :ref:`strftime <strftime-strptime-behavior>`

callable or :ref:`strftime behavior <strftime-strptime-behavior>`
:func:`python:callable` or :ref:`strftime behavior <strftime-strptime-behavior>`

list(int)
:class:`python:list`\(:class:`python:int`)

list[int]
:class:`python:list`\[:class:`python:int`]

dict(str, int)
:class:`python:dict`\(:class:`python:str`, :class:`python:int`)

dict[str,  int]
:class:`python:dict`\[:class:`python:str`,  :class:`python:int`]

tuple(float, float)
:class:`python:tuple`\(:class:`python:float`, :class:`python:float`)

dict[tuple(str, str), int]
:class:`python:dict`\[:class:`python:tuple`\(:class:`python:str`, :class:`python:str`), :class:`python:int`]
a@
  
(...) array_like, float, optional
(...) :term:`numpy:array_like`, :class:`python:float`, optional

(2,) ndarray
(2,) :obj:`ndarray <numpy.ndarray>`

(...,M,N) array_like
(...,M,N) :term:`numpy:array_like`

(..., M, N) array_like
(..., M, N) :term:`numpy:array_like`

(float, float), optional
(:class:`python:float`, :class:`python:float`), optional

1-D array or sequence
1-D :obj:`array <numpy.ndarray>` or :term:`python:sequence`

array of str or unicode-like
:obj:`array <numpy.ndarray>` of :class:`python:str` or unicode-like

array_like of float
:term:`numpy:array_like` of :class:`python:float`

bool or callable
:ref:`bool <python:bltin-boolean-values>` or :func:`python:callable`

int in [0, 255]
:class:`python:int` in [0, 255]

int or None, optional
:class:`python:int` or :data:`python:None`, optional

list of str or array_like
:class:`python:list` of :class:`python:str` or :term:`numpy:array_like`

sequence of array_like
:term:`python:sequence` of :term:`numpy:array_like`

str or pathlib.Path
:class:`python:str` or pathlib.Path

{'', string}, optional
{'', :class:`python:str`}, optional

{'C', 'F', 'A', or 'K'}, optional
{'C', 'F', 'A', or 'K'}, optional

{'linear', 'lower', 'higher', 'midpoint', 'nearest'}
{'linear', 'lower', 'higher', 'midpoint', 'nearest'}

{False, True, 'greedy', 'optimal'}
{:data:`python:False`, :data:`python:True`, 'greedy', 'optimal'}

{{'begin', 1}, {'end', 0}}, {string, int}
{{'begin', 1}, {'end', 0}}, {:class:`python:str`, :class:`python:int`}

callable f'(x,*args)
:func:`python:callable` f'(x,*args)

callable ``fhess(x, *args)``, optional
:func:`python:callable` ``fhess(x, *args)``, optional

spmatrix (format: ``csr``, ``bsr``, ``dia`` or coo``)
spmatrix (format: ``csr``, ``bsr``, ``dia`` or coo``)

:ref:`strftime <strftime-strptime-behavior>`
:ref:`strftime <strftime-strptime-behavior>`

callable or :ref:`strftime <strftime-strptime-behavior>`
:func:`python:callable` or :ref:`strftime <strftime-strptime-behavior>`

callable or :ref:`strftime behavior <strftime-strptime-behavior>`
:func:`python:callable` or :ref:`strftime behavior <strftime-strptime-behavior>`

list(int)
:class:`python:list`\(:class:`python:int`)

list[int]
:class:`python:list`\[:class:`python:int`]

dict(str, int)
:class:`python:dict`\(:class:`python:str`, :class:`python:int`)

dict[str,  int]
:class:`python:dict`\[:class:`python:str`,  :class:`python:int`]

tuple(float, float)
:class:`python:tuple`\(:class:`python:float`, :class:`python:float`)

dict[tuple(str, str), int]
:class:`python:dict`\[:class:`python:tuple`\(:class:`python:str`, :class:`python:str`), :class:`python:int`]
>   inofordefaultoptional
param_typeexpected_resultc                 R    g | ]$}t          |                    d                     %S 
tuplesplit.0ss     X/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/numpydoc/tests/test_xref.py
<listcomp>r      s*    >>>aU1774==>>>    z

c                 H    t          | t          t                    |k    sJ d S )N)r   xref_aliasesxref_ignorer
   s     r   test_make_xrefr      s'    
 Z{;;NNNNNNr   c                 R    g | ]$}t          |                    d                     %S r   r   r   s     r   r   r      s*    IIIaU1774==IIIr   c                 @    t          | t          d          |k    sJ d S )Nallr   )r   r   r
   s     r   test_make_xref_ignore_unknownr!      s*    
 Z5AAA_TTTTTTr   c                      t          j        t          d          5  t          dt          d           d d d            d S # 1 swxY w Y   d S )Nzmust be a set or 'all')match
array_likefoor    )pytestraises	TypeErrorr   r    r   r   test_xref_ignore_is_allr*      s    	y(@	A	A	A A A,%@@@@A A A A A A A A A A A A A A A A A As   AAA)r&   numpydoc.xrefr   r   r   datadata_ignore_objr   markparametrizestripr   r   r!   r*   r)   r   r   <module>r1      s(    2 2 2 2 2 2 2 2 ]~]~ 877 %>>4::<<#5#5f#=#=>>> O O	 O %II?#8#8#:#:#@#@#H#HIII U U	 UA A A A Ar   