File: //lib/python3/dist-packages/numpy/f2py/tests/__pycache__/test_crackfortran.cpython-310.pyc
o
6��a� � @ s� d dl Zd dlmZ ddlmZ d dlmZ d dlZd dl Z G dd� dej
�ZG dd � d �ZG d
d� dej
�Z
G dd
� d
ej
�ZdS )� N)�assert_array_equal� )�util)�crackfortranc @ s e Zd ZdZdd� ZdS )�TestNoSpacea|
subroutine subb(k)
real(8), intent(inout) :: k(:)
k=k+1
endsubroutine
subroutine subc(w,k)
real(8), intent(in) :: w(:)
real(8), intent(out) :: k(size(w))
k=w+1
endsubroutine
function t0(value)
character value
character t0
t0 = value
endfunction
c C sx t jg d�t jd�}t jg d�t jd�}| j�|� t||d � | j�||g� t||d � | j�d�dks:J �d S )N)r � � )�dtyper � � 2)�np�array�float64�module�subbr �subc�t0)�self�k�w� r �D/usr/lib/python3/dist-packages/numpy/f2py/tests/test_crackfortran.py�test_module s zTestNoSpace.test_moduleN)�__name__�
__module__�__qualname__�coder r r r r r s r c @ s e Zd Zdd� Zdd� ZdS )�TestPublicPrivatec C s� |d }|� d��}|�t�d�� W d � n1 sw Y t�t|�g�}t|�dks1J �|d }d|d d d v sAJ �d
|d d d vsMJ �d|d d d v sYJ �d
|d d d vseJ �d|d d d vsqJ �d
|d d d v s}J �d S )
N�mod.f90r a> module foo
private
integer :: a
public :: setA
integer :: b
contains
subroutine setA(v)
integer, intent(in) :: v
a = v
end subroutine setA
end module foo
r r �private�vars�a�attrspec�public�b�seta��open�write�textwrap�dedentr �str�len�r �tmp_path�f_path�ff�modr r r �test_defaultPrivate) s �z%TestPublicPrivate.test_defaultPrivatec C s� |d }|� d��}|�t�d�� W d � n1 sw Y t�t|�g�}t|�dks1J �|d }d|d d d v sAJ �d
|d d d vsMJ �d|d d d vsYJ �d
|d d d v seJ �d S )Nr r a+ module foo
public
integer, private :: a
public :: setA
contains
subroutine setA(v)
integer, intent(in) :: v
a = v
end subroutine setA
end module foo
r r r r r! r"