U C^D@sfdZddlmZmZmZdddZdZddlmZm Z m Z m Z m Z d d d gd Z d dZddZdS)ag Build 'use others module data' mechanism for f2py2e. Unfinished. Copyright 2000 Pearu Peterson all rights reserved, Pearu Peterson 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 )divisionabsolute_importprint_functionz$Revision: 1.3 $ z See `f2py -v`) applyrules dictappendgentitlehasnoteoutmessa #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#},Z F_MODFUNC)bodymethodZneedc Cszi}td|di}i}d|kr~|dD]L}|d||krltd|d||||d|fq0|||d|<q0d|kr|dr|dD]p}|d||dkr||d||kr|d|||<ntd||d|fqtd||d|fqn4|dD]&}||kr:||||<n|||<q|D]&}t|t||||d|d}qN|S) NzL Building use variable hooks for module "%s" (feature only for F90/F95)... namemapz: Variable "%s<=%s" is already mapped by "%s". Skipping. onlyvarsz% Ignoring map "%s=>%s". See above. z2 No definition for variable "%s=>%s". Skipping. )r keysr buildusevar)mrretZvarsmapZrevmapkvr7/tmp/pip-install-6_kvzl1k/numpy/numpy/f2py/use_rules.py buildusevars6sB      $rc Cstd||fi}||||||ddtd||ftd||fd||fd }dd d d d d ddddd }||d<|D] }|dt||||d<qt||r||d|d<ti|}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) rrealnameZREALNAME usemodulenameZ USEMODULENAMEZtexnameZ begintitleZendtitleZapinameZRoZRiZRiiZRiiiZRivZRvZRviZRviiZRviiiZRix) rr Z texnamenameZnote) r upperreplacer rreprr r printrusemodule_rules) rrrrrZvrdZnummapirdrrrrZs>       rN)__doc__ __future__rrr __version__Z f2py_versionZauxfuncsrr r r r r,rrrrrrs $