
    -Ph	                         d dl mZ d dlmc mZ d dlT d dlT d dlT  G d de          Ze	dk    rd dl
Z
 e
j                     dS dS )    )
CythonTestN)*c                   \    e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
d	 Zd
 Zd Zd Zd ZdS )TestMemviewParsingc                 B                            fd          j        S )Nc                  .                                    S Nfragmentsselfs   a/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/Cython/Compiler/Tests/TestMemView.py<lambda>z*TestMemviewParsing.parse.<locals>.<lambda>   s    DMM!,<,<     )should_not_failroot)r   r   s   ``r   parsezTestMemviewParsing.parse
   s(    ##$<$<$<$<$<==BBr   c                                             fdt          j                  }                     ||j                   d S )Nc                  .                                    S r	   r
   r   s   r   r   z2TestMemviewParsing.not_parseable.<locals>.<lambda>   s    T]]1%5%5 r   )should_failErrorsCompileErrorassertEqualmessage_only)r   expected_errorr   es   ` ` r   not_parseablez TestMemviewParsing.not_parseable   sG    555558KLL88888r   c                 Z    |                      d           |                      d           d S )Ncdef int[:] xzcdef short int[:] xr   r   s    r   test_default_1dimz$TestMemviewParsing.test_default_1dim   s-    

?###

()))))r   c                     |                      d           |                      d           |                      d           d S )Nzcdef int[:,:,:,:,:] xz#cdef unsigned long int[:,:,:,:,:] xzcdef unsigned int[:,:,:,:,:] xr!   r"   s    r   test_default_ndimz$TestMemviewParsing.test_default_ndim   sA    

*+++

8999

344444r   c                 Z    |                      d           |                      d           d S )Nzcdef long double[0:] xzcdef int[0:] xr!   r"   s    r   test_zero_offsetz#TestMemviewParsing.test_zero_offset   s.    

+,,,

#$$$$$r   c                 0    |                      d           d S )Nzcdef int[0:,0:,0:,0:] xr!   r"   s    r   test_zero_offset_ndimz(TestMemviewParsing.test_zero_offset_ndim   s    

,-----r   c                 0    |                      d           d S )Nzdef foo(int[:,:] x): passr!   r"   s    r   test_def_argzTestMemviewParsing.test_def_arg!   s    

./////r   c                 0    |                      d           d S )Nzcdef foo(int[:,:] x): passr!   r"   s    r   test_cdef_argz TestMemviewParsing.test_cdef_arg$   s    

/00000r   c                 0    |                      d           d S )Nz9cdef float[::ptr, ::direct & contig, 0::full & strided] xr!   r"   s    r   test_general_slicez%TestMemviewParsing.test_general_slice'   s    

NOOOOOr   c                 ^    |                      dd           |                      dd           d S )NzDAn axis specification in memoryview declaration does not have a ':'.zcdef double[:foo, bar] xzcdef double[0:foo, bar] xr   r"   s    r   test_non_slice_memviewz)TestMemviewParsing.test_non_slice_memview*   sH    a*	, 	, 	,a+	- 	- 	- 	- 	-r   c                     |                      d          }|j        d         j        }|                     t	          |t
                               d S )Nr    r   )r   stats	base_type
assertTrue
isinstanceMemoryViewSliceTypeNode)r   t	memv_nodes      r   
test_basiczTestMemviewParsing.test_basic0   sD    JJ''GAJ(	
9.EFFGGGGGr   c                 2    |                      dd           d S )NExpected ']'z$cdef extern foo(object[int, ndim=2])r1   r"   s    r   disable_test_no_buf_argz*TestMemviewParsing.disable_test_no_buf_arg8   s)    >6	8 	8 	8 	8 	8r   c                     |                      d           |                      d           |                      d           |                     dd           |                     dd           d S )Nzsizeof(int[NN])zsizeof(int[])zsizeof(int[][NN])z!Expected an identifier or literalzsizeof(int[:NN])r=   zsizeof(foo[dtype=bar])r   r   r"   s    r   disable_test_parse_sizeofz,TestMemviewParsing.disable_test_parse_sizeof<   s    

$%%%

?###

&'''>"	$ 	$ 	$>'	) 	) 	) 	) 	)r   N)__name__
__module____qualname__r   r   r#   r%   r'   r)   r+   r-   r/   r2   r;   r>   r@    r   r   r   r      s        C C C9 9 9* * *5 5 5
% % %. . .0 0 01 1 1P P P- - -H H H8 8 8) ) ) ) )r   r   __main__)Cython.TestUtilsr   Cython.Compiler.ErrorsCompilerr   Cython.Compiler.Nodes#Cython.Compiler.ParseTreeTransformsCython.Compiler.Bufferr   rA   unittestmainrD   r   r   <module>rN      s    ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' # # # # 1 1 1 1 $ $ $ $;) ;) ;) ;) ;) ;) ;) ;)z zOOOHMOOOOO r   