+
    ei  c                   s    R t ^ RIHtHt ^ RIt^ RIHt ^ RIH	t
 R R ltR R ltR R	 ltR
 R ltR R ltR R ltR R ltR R ltR R ltR R ltR R ltR R ltR R ltR R ltR  R! ltR" R# ltR# )$zGThese tests are based on the doctests from `numpy/lib/recfunctions.py`.)Anyassert_typeN)recfunctionsc                    V ^8  d   QhRR/#    ZreturnN Zformat   "P/usr/lib64/python3.14/site-packages/numpy/typing/tests/data/pass/recfunctions.py__annotate__r
   
   s     @ @D @    c                  s   \         P                  ! RR.R\         P                  3R\         P                  3.R7      p \         P                  ! \        ^4      3V P                  R7      p\        P                  ! W4      p\        V\         P                  \        \
        ,          \         P                  \         P                  ,          3,          4       R# )   ABdtypeN)r   g      $@)r   g      4@)npZarrayint64float64zerosintr   rfnZrecursive_fill_fieldsr   ndarraytuplevoid)abZout      r	   test_recursive_fill_fieldsr   
   s     hh	IRXXbjj 12A 	#a&!''*A

#
#A
)CRZZc
BHHRWW,= =>?r   c                r   r   r   r   r   r	   r
   r
      s     " " "r   c                     \         P                  ! \        P                  ! R	R\        3.R7      P
                  4      p \         P                  ! \        P                  ! R	R\        3R\        3.R7      P
                  4      p \        P
                  ! R\        3RR\        3R\        3.3.4      p\         P                  ! V4      p R# 
r   r   r   r   r   r   b_ab_bN)r   )r   Z	get_namesr   emptyr   r   floatZnamesZadtype     r	   test_get_namesr&      s    MM"((4c
|<BBCEMM"((4c
S%L/IJPPQEXXSzC5#,)E#FGHFMM&!Er   c                r   r   r   r   r   r	   r
   r
      s     ' 'T 'r   c                  r   r   )r   Zget_names_flatr   r"   r   r   r#   r$   r%   r	   test_get_names_flatr'      s    rxxc3ZLAGGHErxxc3Z#u4NOUUVEXXSzC5#,)E#FGHFv&Er   c                r   r   r   r   r   r	   r
   r
   &   s     H HD Hr   c                  s    \         P                  ! RRRR.3.4      p \        \        P                  ! V 4      \
        \
        \        \         P                  3,          ,          4       R# )r   r   N)r   <i4)r    z<f8)r!   r(   )r   r   r   r   Zflatten_descrr   strndtype    r	   test_flatten_descrr-   &   sF    XX|cNN+K%LMNF!!&)5sBHH}1E+FGr   c                r   r   r   r   r   r	   r
   r
   +   s     F F Fr   c            	      s    \         P                  ! R \        3RR\        3RR\        3R\        3.3.3.4      p \        \        P
                  ! V 4      \        \        \        \        ,          3,          4       R# )r   r   ZB_AB_BZB_B_AZB_B_BN)	r   r   r   r   r   Zget_fieldstructureZdictr)   Zlistr*   r,   r	   test_get_fieldstructurer/   +   sc    XX	c
	s|ewnwn%EFGH F &&v.S$s)^0DEr   c                r   r   r   r   r   r	   r
   r
   3   s      4 r   c            
      s   \        \        P                  ! \        P                  ! \        ^4      3\        P                  4      \        P                  ! \        ^4      3\        P                  4      34      \        P                  \        \
        ,          \        P                  \        P                  ,          3,          4       R# )r   N)r   r   Zmerge_arraysr   onesr   int_r   recarrayr   r   r   r   r   r	   test_merge_arraysr3   3   sq    GGSVIrww'GGSVIrzz*
 	 	E#J 112r   c                r   r   r   r   r   r	   r
   r
   =   s      $ r   c                  sb   R \         P                  3RR\         P                  3R\         P                  3.3.p \         P                  ! \	        ^4      3V R7      p\        \        P                  ! VR 4      \         P                  \        \        ,          \         P                  \         P                  ,          3,          4       \        \        P                  ! VR RR7      \         P                  P                  \        \        ,          \         P                  \         P                  ,          3,          4       \        \        P                  ! VR 4      \         P                  P                  \        \        ,          \         P                  \         P                  ,          3,          4       R# )r   r   r    r!   r   T)Z
asrecarrayN)r   r   doubler0   r   r   r   Zdrop_fieldsr   r   r   r   Zrecr2   Zrec_drop_fieldsr+   r   r%   r	   test_drop_fieldsr6   =   s    BHHoubii&85"((:K%LMNF
Q	(A3


5:rxx001 340
c
BHHRWW$556 As#
c
BHHRWW$556r   c                r   r   r   r   r   r	   r
   r
   O   s      D r   c            	      s   R \         P                  3RR\         P                  3R\         P                  3.3.p \         P                  ! \	        ^4      3V R7      p\        \        P                  ! VR RRR/4      \         P                  \        \        ,          \         P                  \         P                  ,          3,          4       R# )r   r   r    r!   r   r   r.   N)r   r   r4   r0   r   r   r   Zrename_fieldsr   r   r   r   r5   r%   r	   test_rename_fieldsr7   O   s    BHHoubii&85"((:K%LMNF
Q	(A!c3u56


5:rxx001r   c                r   r   r   r   r   r	   r
   r
   Y   s      D r   c            	      sH   \         P                  ! R RR7      p \        \        P                  ! V 4      \         P                  \         P
                  ,          4       \        \        P                  ! V P                  ^ 4      4      \         P
                  4       \        \        P                  ! \         P                  ! \        ^4      3V R7      4      \         P                  \        \        ,          \         P                  \         P
                  ,          3,          4       R# )zu1, <i8, <f8T)Zalignr   N)r   r   r   r   Zrepack_fieldsr   Ztyper0   r   r   r   )dtr,   r	   test_repack_fieldsr9   Y   s    HH^4@B!!"%rxx'89!!"''!*-rww7"''3q6)267


5:rxx001r   c                r   r   r   r   r   r	   r
   r
   d   s     E E Er   c                  s    \         P                  ! ^. ROR7      p \        \        P                  ! V 4      \
        P                  \        ,          4       R# )   r   Nr   i4)r   zf4,u2)cf4r   )r   r   r   r   Zstructured_to_unstructurednptNDArrayr    r   r,   r	   test_structured_to_unstructuredrC   d   s1    
GHA..q13;;s3CDr   c                r   r   r   r   r   r	   r
   r
   i   s     M MD Mr   c                  s&   \         P                  ! . RO4      p \         P                  ! ^\         P                  R7      P	                  R4      p\        \        P                  ! W4      \        P                  \         P                  ,          4       R# )r   r   Nr;   )r:   i   )r   r   Zarangeint32Zreshaper   r   unstructured_to_structuredr@   rA   r   )r8   r   r%   r	   rE   rE   i   sR    HH%RSB
		"BHH%--f5A..q5s{{2777KLr   c                r   r   r   r   r   r	   r
   r
   o   s       r   c                  *   \         P                  ! ^. ROR7      p \        \        P                  ! \         P
                  V 4      \         P                  \        \        ,          \         P                  \         P                  ,          3,          4       R# r:   r   N))xr=   )Zyr?   )zf8r   r0   r   r   Zapply_along_fieldsZmeanr   r   r   r   r   r   r,   r	   test_apply_along_fieldsrM   o   Q    
@AArww*


5:rxx001r   c                r   r   r   r   r   r	   r
   r
   w   s      D r   c                  rF   rG   rK   rL   r,   r	   test_assign_fields_by_namerO   w   rN   r   c                r   r   r   r   r   r	   r
   r
      s      T r   c                  s   \         P                  ! ^. ROR7      p \        \        P                  ! V RR.4      \         P
                  \        \        ,          \         P                  \         P                  ,          3,          4       R# )r:   r   Nr>   Zu1)r<   )r   rJ   rP   )r   r?   )
r   r0   r   r   Zrequire_fieldsr   r   r   r   r   rB   r,   r	   test_require_fieldsrQ      sR    
@AA1{K89


5:rxx001r   c                r   r   r   r   r   r	   r
   r
      s      4 r   c                  s   \         P                  ! \        ^4      3\         P                  4      p \	        \
        P                  ! V 4      \         P                  \        \        ,          \         P                  \         P                  ,          3,          4       \         P                  ! \        ^4      3RR\        3.4      p\         P                  ! \        ^4      3RR\         P                  3R\         P                  3.4      p\	        \
        P                  ! W34      \         P                  P                  \        \        R3,          \         P                  \         P                   ,          3,          4       R# )r   r   ZC.N)r   z|S3)r   r   r   rD   r   r   Zstack_arraysr   r   r   r0   r#   r   maMaskedArrayr    r   )rH   rI   Zzzr   r	   test_stack_arraysrT      s    
#a&BHH%A


5:rxx112
 	Q	L3,78A	#a&\C+<sBJJ>OP	QB!!
%S/288BGG+<<=r   c                r   r   r   r   r   r	   r
   r
      s      d r   c            	      s   \         P                  ! R \        3.4      p \         P                  P	                  ^. ROR7      P                  V 4      p\        \        P                  ! V4      \         P                  P                  \        \         P                  \         P                  ,          3,          4       \        \        P                  ! VRRR7      \        \         P                  P                  \        \         P                  \         P                  ,          3,          \         P                  \        \         P                  \         P                  ,          3,          3,          4       R# )r   )ZmaskT)Z
ignoremaskZreturn_indexN)    rU   r   rU   rU   rU   r   )r   r   r   rR   r0   Zviewr   r   Zfind_duplicatesrS   r    r   r   r   r1   r5   r%   r	   test_find_duplicatesrV      s    XXSzl#F


10
166v>A##A&(9(9#rxx?P:P(QRA$TBEEc288BGG#445JJsBHHRWW--.0	
r   )Z__doc__Ztypingr    r   Znumpyr   Znumpy.typingr@   Z	numpy.libr   r   r   r&   r'   r-   r/   r3   r6   r7   r9   rC   rE   rM   rO   rQ   rT   rV   r   r   r	   <module>rW      si    M #   )@"'H
F$E
Mr   