o
    6a                     @   sR   d Z ddd ZdZddlmZmZmZmZmZ ddd	gd
Z	dd Z
dd ZdS )ag  

Build 'use others module data' mechanism for f2py2e.

Unfinished.

Copyright 2000 Pearu Peterson all rights reserved,
Pearu Peterson <pearu@ioc.ee>
Permission to use, modify, and distribute this software is given under the
terms of the NumPy License.

NO WARRANTY IS EXPRESSED OR IMPLIED.  USE AT YOUR OWN RISK.
$Date: 2000/09/10 12:35:43 $
Pearu Peterson

z$Revision: 1.3 $
   zSee `f2py -v`   )
applyrules
dictappendgentitlehasnoteoutmessa  
#begintitle#
static char doc_#apiname#[] = "\
Variable wrapper signature:\n\
	 #name# = get_#name#()\n\
Arguments:\n\
#docstr#";
extern F_MODFUNC(#usemodulename#,#USEMODULENAME#,#realname#,#REALNAME#);
static PyObject *#apiname#(PyObject *capi_self, PyObject *capi_args) {
/*#decl#*/
	if (!PyArg_ParseTuple(capi_args, "")) goto capi_fail;
printf("c: %d\n",F_MODFUNC(#usemodulename#,#USEMODULENAME#,#realname#,#REALNAME#));
	return Py_BuildValue("");
capi_fail:
	return NULL;
}
zC	{"get_#name#",#apiname#,METH_VARARGS|METH_KEYWORDS,doc_#apiname#},	F_MODFUNC)bodymethodneedc              	   C   sp  i }t d| d   i }i }d|v r?|d  D ]&}|d | |v r6t d|d | |||d |  f  q|||d | < qd|v r|d r|d  D ]8}|d | | d v ry||d |  |krl|d | ||< qMt d||d | f  qMt d||d | f  qMn| d  D ]}||v r|| ||< q|||< q| D ]}t|t||| | d | d }q|S )	NzL		Building use variable hooks for module "%s" (feature only for F90/F95)...
namemapz:			Variable "%s<=%s" is already mapped by "%s". Skipping.
onlyvarsz%			Ignoring map "%s=>%s". See above.
z2			No definition for variable "%s=>%s". Skipping.
)r   keysr   buildusevar)mrretvarsmaprevmapkv r   6/usr/lib/python3/dist-packages/numpy/f2py/use_rules.pybuildusevars4   s@   


"r   c           	      C   s   t d| |f  i }| || || | ddtd| |f td| |f d||f d	}dd	d
dddddddd
}| |d< | D ]}|d t||| |d< qCt|| rb|| d |d< ti |}t| |||  t	t
|}|S )Nz:			Constructing wrapper function for variable "%s=>%s"...
_z\_z%s=>%szend of %s=>%sz#modulename#_use_%s_from_%s)	r   realnameREALNAMEusemodulenameUSEMODULENAMEtexname
begintitleendtitleapinameRoRiRiiRiiiRivRvRviRviiRviiiRix)
    r                        	   texnamenamenote)r   upperreplacer   r   reprr   r   printr   usemodule_rules)	r   r   r   r    r   vrdnummapirdr   r   r   r   X   s4   






r   N)__doc____version__f2py_versionauxfuncsr   r   r   r   r   r?   r   r   r   r   r   r   <module>   s   $