gridloop2 in C; macros

NumPy array code in C can be simplified using macros
First, a smart macro wrapping an argument in quotes:
#define QUOTE(s) # s   /* turn s into string "s" */
Check the type of the array data:
#define TYPECHECK(a, tp) \
  if (a->descr->type_num != tp) { \
    PyErr_Format(PyExc_TypeError, \
    "%s array is not of correct type (%d)", QUOTE(a), tp); \
    return NULL; \
  }
PyErr_Format is a flexible way of raising exceptions in C (must return NULL afterwards!)

previousnexttable of contents