
=================
Numpy Ufunc C-API
=================
::

  PyObject *
  PyUFunc_FromFuncAndData(PyUFuncGenericFunction *func, void
                          **data, char *types, int ntypes, int nin, int
                          nout, int identity, char *name, char *doc, int
                          check_return)


::

  int
  PyUFunc_RegisterLoopForType(PyUFuncObject *ufunc, int
                              usertype, PyUFuncGenericFunction
                              function, int *arg_types, void *data)


::

  int
  PyUFunc_GenericFunction(PyUFuncObject *self, PyObject *args, PyObject
                          *kwds, PyArrayObject **mps)


This generic function is called with the ufunc object, the arguments to it,
and an array of (pointers to) PyArrayObjects which are NULL.  The
arguments are parsed and placed in mps in construct_loop (construct_arrays)

::

  void
  PyUFunc_f_f_As_d_d(char **args, intp *dimensions, intp *steps, void
                     *func)


::

  void
  PyUFunc_d_d(char **args, intp *dimensions, intp *steps, void *func)


::

  void
  PyUFunc_f_f(char **args, intp *dimensions, intp *steps, void *func)


::

  void
  PyUFunc_g_g(char **args, intp *dimensions, intp *steps, void *func)


::

  void
  PyUFunc_F_F_As_D_D(char **args, intp *dimensions, intp *steps, void
                     *func)


::

  void
  PyUFunc_F_F(char **args, intp *dimensions, intp *steps, void *func)


::

  void
  PyUFunc_D_D(char **args, intp *dimensions, intp *steps, void *func)


::

  void
  PyUFunc_G_G(char **args, intp *dimensions, intp *steps, void *func)


::

  void
  PyUFunc_O_O(char **args, intp *dimensions, intp *steps, void *func)


::

  void
  PyUFunc_ff_f_As_dd_d(char **args, intp *dimensions, intp *steps, void
                       *func)


::

  void
  PyUFunc_ff_f(char **args, intp *dimensions, intp *steps, void *func)


::

  void
  PyUFunc_dd_d(char **args, intp *dimensions, intp *steps, void *func)


::

  void
  PyUFunc_gg_g(char **args, intp *dimensions, intp *steps, void *func)


::

  void
  PyUFunc_FF_F_As_DD_D(char **args, intp *dimensions, intp *steps, void
                       *func)


::

  void
  PyUFunc_DD_D(char **args, intp *dimensions, intp *steps, void *func)


::

  void
  PyUFunc_FF_F(char **args, intp *dimensions, intp *steps, void *func)


::

  void
  PyUFunc_GG_G(char **args, intp *dimensions, intp *steps, void *func)


::

  void
  PyUFunc_OO_O(char **args, intp *dimensions, intp *steps, void *func)


::

  void
  PyUFunc_O_O_method(char **args, intp *dimensions, intp *steps, void
                     *func)


::

  void
  PyUFunc_OO_O_method(char **args, intp *dimensions, intp *steps, void
                      *func)


::

  void
  PyUFunc_On_Om(char **args, intp *dimensions, intp *steps, void *func)


::

  int
  PyUFunc_GetPyValues(char *name, int *bufsize, int *errmask, PyObject
                      **errobj)


::

  int
  PyUFunc_checkfperr(int errmask, PyObject *errobj, int *first)


::

  void
  PyUFunc_clearfperr()


::

  int
  PyUFunc_getfperr(void )


::

  int
  PyUFunc_handlefperr(int errmask, PyObject *errobj, int retstatus, int
                      *first)


::

  int
  PyUFunc_ReplaceLoopBySignature(PyUFuncObject
                                 *func, PyUFuncGenericFunction
                                 newfunc, int
                                 *signature, PyUFuncGenericFunction
                                 *oldfunc)


::

  PyObject *
  PyUFunc_FromFuncAndDataAndSignature(PyUFuncGenericFunction *func, void
                                      **data, char *types, int
                                      ntypes, int nin, int nout, int
                                      identity, char *name, char
                                      *doc, int check_return, const char
                                      *signature)


