
    bi                        d Z ddlZddlZddlZddlZddgZg Z e	ej                  j                        D ]3  Zeevsej                   eej                  j                  e             5  e	ej                  j                        D ].  Zej                   eej                  j                  e             0 eD  cg c]  }  e| ej                         s|  c} Zej"                  j%                  de      d        Zyc c} w )a  Test that all ufuncs have float32-preserving signatures.

This was once guaranteed through the code generation script for
generating ufuncs, `scipy/special/_generate_pyx.py`. Starting with
gh-20260, SciPy developers have begun moving to generate ufuncs
through direct use of the NumPy C API (through C++). Existence of
float32 preserving signatures must now be tested since it is no
longer guaranteed.
    N_gen_harmonic_normalized_gen_harmonicufuncc                    t        d | j                  D              }t               }|D ]U  }|j                  |j                  dd      j                  dd      |j                  dd      j                  dd      g       W ||k(  sJ y )Nc              3   @   K   | ]  }d |v sd|v sd|v sd|v s|  yw)liqpN ).0sigs     d/home/cdr/jupyterlab/.venv/lib/python3.12/site-packages/scipy/special/tests/test_ufunc_signatures.py	<genexpr>z(test_ufunc_signatures.<locals>.<genexpr>(   s2      Os
cSjC3J#*  Os   dfDF)settypesupdatereplace)r   r   expanded_typesr   s       r   test_ufunc_signaturesr      s      Ou{{ O OE
 UN 
[[c"**34[[c"**346	


 N"""    )__doc__numpynppytestscipy.special._ufuncsscipyscipy.special._gufuncs
exceptions_ufuncsdirspecialfuncnameappendgetattr_gufuncs
isinstancer   markparametrizer   )funcs   0r   <module>r/      s       
 9:

EMM))* AHz!wu}}44h?@A EMM**+ >HNN75==118<=> $
BDz$'A4
B'*# +# Cs   <C?C?