+
    :ij"                        ^ RI t ^ RIt^ RIHt ^ RIHtHtHt ^ RI	t	]! RR7      R 4       t
]! RR7      R 4       t]! RR7      R 4       t]! RR7      R	 4       t]! RR7      R
 4       tR t]! R4      t]! R4      t]! R4      t]! R4      t]! R4      t]! R4      t]! R4      t]! R4      t]! R4      t ! R R]]4      t ! R R]]4      t]R8X  d   ]	P8                  ! 4        R# R# )    N)jit)TestCasecompile_functionMemoryLeakMixinTnopythonc                     \        V 4      # N)len)bufs   &^/var/www/html/photoedit/myenv/lib/python3.14/site-packages/numba/tests/test_buffer_protocol.pylen_usecaser   
   s    s8O    c                     W,          # r
    )r   is   &&r   getitem_usecaser      s	    6Mr   c                 F    WV pV^ ,          ^VR,          ,          ,           # )r   r   )r   r   jss   &&& r   getslice_usecaser      s"    aAQ4!ae)r   c                     W V&   R # r
   r   )r   r   vs   &&&r   setitem_usecaser      s	    Fr   c                 `    R p\        V 4       F  w  r#W,          pW^,           ,          pK  	  V# )g        )	enumerate)r   resr   xs   &   r   iter_usecaser       s0    
C#1u  Jr   c                 r    R \        4       ,          p\        RV\        4       4      p\        RR7      ! V4      # )z'def func(x):
        return x.%(attr)s
funcTr   )localsr   globalsr   )attrcodepyfuncs   &  r   
attrgetterr(   (   s5    hD fdGI6Ff%%r   
contiguousc_contiguousf_contiguousitemsizenbytesndimreadonlyshapestridesc                   x   a  ] tR t^;t o RtR tR tR tR tR t	R t
R tR	 tR
 tR tR tR tR tR tRtV tR# )TestBufferProtocolz.
Test operations on buffer-providing objects.
c           	   #     "   ^
pR F=  w  r#\         P                   ! T\        V4       Uu. uF  qDV,           NK  	  up4      x  K?  	  R# u upi 5i)
   N))b)Br   )hx)H@  )r   `y)I@B )lr=   )Lr?   )q         )Ql           )f      ?)dg      )arrayrange)selfnletteroffsetr   s   &    r   _arraysTestBufferProtocol._arrays@   sH     NF ++f58&D8a6zz8&DEE 'Es   (AA
Ac              #    "   ^
p\        \        R4      4      x  \        R4      x  R F7  w  r#p\        \        P                  ! W4V4      P	                  V4      4      x  K9  	  \        P
                  ! ^4      P                  R4      pVP                  P                  '       d   VP                  P                  '       d   Q h\        V4      x  VP                  pVP                  P                  '       d   VP                  P                  '       d   Q h\        V4      x  VR,          pVP                  P                  '       g   VP                  P                  '       d   Q h\        V4      x  R# 5i)r5   	   abcdefghiNN   N))int8ir5   )uint8r   r5   )int16r:   i  )uint16r<   iP  )int32r=   i )uint32r   r?   )int64rC   r5   )uint64r   l    )float32rF         @)float64rF   r]   )	complex64                    (@      @)
complex128r`   ra         )
memoryview	bytearraynplinspaceastypearangereshapeflagsr*   r+   T)rJ   rK   dtypestartstoparrs   &     r   _memoryviewsTestBufferProtocol._memoryviewsR   s    <011&&#E$ R[[a8??FGG#  iim##F+yy%%%cii.D.D.DDDoeeyy%%%cii.D.D.DDDo#h99)))#))2H2H2HHHos   B?E6AE6AE6%E6c              #     "   R x  \        R4      x  \        P                  ! ^4      pVP                  RR7       \        V4      x  R# 5i)   xyzrQ   FwriteN)rf   rh   rk   setflagsrJ   rr   s   & r   _readonliesTestBufferProtocol._readonliesq   s:     &&iil5!os   A	Ac                R    VP                   pV P                  V! V!  V! V!  4       R # r
   )py_funcassertPreciseEqual)rJ   jitfuncargsr'   s   &&* r   _check_unaryTestBufferProtocol._check_unaryx   s#    >r   c                2    V P                  \        V4       R # r
   )r   r   rJ   objs   &&r   	check_lenTestBufferProtocol.check_len|   s    +s+r   c                2    V P                  \        V4       R # r
   )r   r    r   s   &&r   
check_iterTestBufferProtocol.check_iter   s    ,,r   c                    R  pV! V4       F'  p W,          pT P                  \        Y4      T4       K)  	  R#   \         \        3 d.    \        T\        4      '       d   TP                  T,          p L]h i ; i)c              3      "    V P                   p\        P                  ! V4       F$  p\        V4      ^8X  d   V^ ,          x  K   Vx  K&  	  R#   \         d    \        T 4      3p LYi ; i5i   N)r0   AttributeErrorr   rh   ndindex)r   r0   tups   &  r   yield_indices7TestBufferProtocol.check_getitem.<locals>.yield_indices   s^     "		 zz%( s8q=a&LI ) " "C	"s(   A-A A A-A*'A-)A**A-N)NotImplementedError	TypeError
isinstancerf   r   r   r   )rJ   r   r   r   expecteds   &&   r   check_getitem TestBufferProtocol.check_getitem   sp    	 s#A6 ##OC$;XF $ (3 c:..  #wwqzHs   9:A75A7c                .   \        \        V4      4       F|  p\        V4      pW,          ^,          ^,           p\        WV4       V P	                  W,          V4       \        V4       F%  w  rTWR8w  g   K  V P	                  W,          V4       K'  	  K~  	  R# )rS   N)rI   r   listr   assertEqualr   )rJ   r   r   origvalr   s   &&    r   check_setitem TestBufferProtocol.check_setitem   so    s3xA9D&A+/CCC(SVS)#D/6$$SVS1 * !r   c                V    V P                  \        V^\        V4      ^,
          4       R# r   )r   r   r   r   s   &&r   check_getslice!TestBufferProtocol.check_getslice   s    *CCHqLAr   c                L   V P                  \        ^4      4       V P                  R4       V P                  4        F  pV P                  V4       K  	  V P                  4        F  pV P                  V4       K  	  V P	                  4        F  pV P                  V4       K  	  R# )   rv   N)r   rg   rs   rN   r{   r   rJ   memrr   r   s   &   r   test_lenTestBufferProtocol.test_len   sz    y|$v$$&CNN3 '<<>CNN3 "##%Cs# &r   c                L   V P                  \        R 4      4       V P                  R4       V P                  4        F  pV P                  V4       K  	  V P                  4        F  pV P                  V4       K  	  V P	                  4        F  pV P                  V4       K  	  R# s   abcrv   N)r   rg   rs   rN   r{   r   s   &   r   test_getitemTestBufferProtocol.test_getitem   s    9V,-6"$$&Cs# '<<>Cs# "##%Cs# &r   c           
        V P                  4       ;_uu_ 4        V P                  \        R 4      4       RRR4       V P                  R4       V P                  \        R4      4       V P                  4       ;_uu_ 4        V P                  \        P                  ! R\        ^
4      4      4       RRR4       V P                  4        F  pV P                  V4       K  	  R#   + '       g   i     L; i  + '       g   i     LM; i)s   abcdeNs   xyzuvwr   )assertTypingErrorr   rg   rf   rH   rI   r{   r   )rJ   r   s   & r   test_getslice TestBufferProtocol.test_getslice   s    ##%%	( 34 &I&Jy12##%%Cr ;< &##%Cs# & &% &%s   C!?0C4!C1	4D	c                   V P                  \        R 4      4       V P                  4        F  pV P                  V4       K  	  V P                  4        F  pV P	                  V4       K  	  V P                  4        F5  pV P                  4       ;_uu_ 4        V P                  V4       RRR4       K7  	  R#   + '       g   i     KL  ; i)rQ   N)r   rg   rN   rs   r   r{   r   )rJ   rr   r   r   s   &   r   test_setitemTestBufferProtocol.test_setitem   s    9\23<<>Cs# "$$&Cs# ' ##%C''))""3' *) &)))s   B66Cc                0   V P                  \        R 4      4       V P                  R4       V P                  \        R4      4       V P                  4        F  pV P                  V4       K  	  V P	                  4        F  pV P                  V4       K  	  R# r   )r   rg   rf   rN   r{   r   )rJ   rr   r   s   &  r   	test_iterTestBufferProtocol.test_iter   sm    	&)*
6*+<<>COOC  "##%Cs# &r   r   N)__name__
__module____qualname____firstlineno____doc__rN   rs   r{   r   r   r   r   r   r   r   r   r   r   r   __static_attributes____classdictcell____classdict__s   @r   r3   r3   ;   sX     F$>?,-G82B$$$	($ $r   r3   c                   T   a  ] tR t^t o RtR tR tR tR tR t	R t
R tR	 tR
tV tR# )TestMemoryViewz5
Test memoryview-specific attributes and operations.
c              #  $  "   \         P                  ! ^4      pVx  VP                  R4      pVx  VP                  x  VR,          x  VP	                  RR7       Vx  \         P
                  ! R4      pVP                  ^ 8X  g   Q hVx  R# 5i)   rR   Frw   Nrc   r   )rh   rk   rl   rn   ry   zerosr.   rz   s   & r   rN   TestMemoryView._arrays   sq     iim	kk&!	ee#h5!	hhrlxx1}}	s   BBc                    V P                  4        F3  p\        V4      pV P                  \        V4      VP                  4       K5  	  R # r
   )rN   rf   r   ndim_usecaser.   rJ   rr   ms   &  r   	test_ndimTestMemoryView.test_ndim   s3    <<>C3A##LOSXX> "r   c                    V P                  4        F3  p\        V4      pV P                  \        V4      VP                  4       K5  	  R # r
   )rN   rf   r   shape_usecaser0   r   s   &  r   
test_shapeTestMemoryView.test_shape   s4    <<>C3A##M!$4cii@ "r   c                    V P                  4        F3  p\        V4      pV P                  \        V4      VP                  4       K5  	  R # r
   )rN   rf   r   strides_usecaser1   r   s   &  r   test_stridesTestMemoryView.test_strides   s4    <<>C3A##OA$6D "r   c                    V P                  4        F3  p\        V4      pV P                  \        V4      VP                  4       K5  	  R # r
   )rN   rf   r   itemsize_usecaser,   r   s   &  r   test_itemsizeTestMemoryView.test_itemsize   s5    <<>C3A##$4Q$7F "r   c                    V P                  4        FD  p\        V4      pV P                  \        V4      VP                  VP
                  ,          4       KF  	  R # r
   )rN   rf   r   nbytes_usecasesizer,   r   s   &  r   test_nbytesTestMemoryView.test_nbytes  s=    <<>C3A##N1$5sxx#,,7NO "r   c                \   V P                  4        FB  p\        V4      pV P                  \        V4      VP                  P
                  '       * 4       KD  	  \        R 4      pV P                  \        V4      R4       \        \        R 4      4      pV P                  \        V4      R4       R# )rv   TFN)rN   rf   assertIsreadonly_usecaserm   	writeablerg   r   s   &  r   test_readonlyTestMemoryView.test_readonly	  s    <<>C3AMM*1-3993F3F/FG " v&q)40y()&q)51r   c                j   \        \        R 4      4      pV P                  \        V4      R4       V P                  \	        V4      R4       V P                  \        V4      R4       V P                  4        F  p\        V4      pT P                  \        V4      VP                  P                  ;'       g    VP                  P                  4       V P                  \	        V4      VP                  P                  4       V P                  \        V4      VP                  P                  4       K  	  R# )rv   TN)
rf   rg   r   contiguous_usecasec_contiguous_usecasef_contiguous_usecaserN   rm   r+   r*   )rJ   r   rr   s   &  r   test_contiguousTestMemoryView.test_contiguous  s    y()(+T2*1-t4*1-t4<<>C3AMM,Q/))00JJCII4J4JLMM.q13993I3IJMM.q13993I3IJ "r   r   N)r   r   r   r   r   rN   r   r   r   r   r   r   r   r   r   r   s   @r   r   r      s=     ?
A
E
G
P
2K Kr   r   __main__)rH   numpyrh   numbar   numba.tests.supportr   r   r   unittestr   r   r   r   r    r(   r   r   r   r   r   r   r   r   r   r3   r   r   mainr   r   r   <module>r      s4      K K  d  d  d 
 d  d &  - !.1 !.1 j) H%&!j) 7#Y'`$( `$F?K_h ?KD zMMO r   