summaryrefslogtreecommitdiff
path: root/numpy
diff options
context:
space:
mode:
Diffstat (limited to 'numpy')
-rw-r--r--numpy/core/code_generators/genapi.py1
-rw-r--r--numpy/core/code_generators/numpy_api.py1
-rw-r--r--numpy/core/src/multiarray/multiarraymodule.c37
-rw-r--r--numpy/core/src/multiarray/new_iterator_pywrap.c6
4 files changed, 25 insertions, 20 deletions
diff --git a/numpy/core/code_generators/genapi.py b/numpy/core/code_generators/genapi.py
index 4b7726ab4..88c809d41 100644
--- a/numpy/core/code_generators/genapi.py
+++ b/numpy/core/code_generators/genapi.py
@@ -45,6 +45,7 @@ API_FILES = [join('multiarray', 'methods.c'),
join('multiarray', 'buffer.c'),
join('multiarray', 'datetime.c'),
join('multiarray', 'new_iterator.c.src'),
+ join('multiarray', 'new_iterator_pywrap.c'),
join('umath', 'ufunc_object.c'),
join('umath', 'loops.c.src'),
]
diff --git a/numpy/core/code_generators/numpy_api.py b/numpy/core/code_generators/numpy_api.py
index b6641fc6c..5b51761f2 100644
--- a/numpy/core/code_generators/numpy_api.py
+++ b/numpy/core/code_generators/numpy_api.py
@@ -291,6 +291,7 @@ multiarray_funcs_api = {
'NpyIter_GetReadFlags': 257,
'NpyIter_GetWriteFlags': 258,
'NpyIter_DebugPrint': 259,
+ 'PyArray_CastingConverter': 260,
}
ufunc_types_api = {
diff --git a/numpy/core/src/multiarray/multiarraymodule.c b/numpy/core/src/multiarray/multiarraymodule.c
index 95dc98e52..f03f5deb4 100644
--- a/numpy/core/src/multiarray/multiarraymodule.c
+++ b/numpy/core/src/multiarray/multiarraymodule.c
@@ -1204,7 +1204,7 @@ PyArray_OrderConverter(PyObject *object, NPY_ORDER *val)
{
char *str;
if (object == NULL || object == Py_None) {
- *val = PyArray_ANYORDER;
+ *val = NPY_ANYORDER;
}
else if (PyUnicode_Check(object)) {
PyObject *tmp;
@@ -1216,10 +1216,10 @@ PyArray_OrderConverter(PyObject *object, NPY_ORDER *val)
}
else if (!PyBytes_Check(object) || PyBytes_GET_SIZE(object) < 1) {
if (PyObject_IsTrue(object)) {
- *val = PyArray_FORTRANORDER;
+ *val = NPY_FORTRANORDER;
}
else {
- *val = PyArray_CORDER;
+ *val = NPY_CORDER;
}
if (PyErr_Occurred()) {
return PY_FAIL;
@@ -1229,13 +1229,16 @@ PyArray_OrderConverter(PyObject *object, NPY_ORDER *val)
else {
str = PyBytes_AS_STRING(object);
if (str[0] == 'C' || str[0] == 'c') {
- *val = PyArray_CORDER;
+ *val = NPY_CORDER;
}
else if (str[0] == 'F' || str[0] == 'f') {
- *val = PyArray_FORTRANORDER;
+ *val = NPY_FORTRANORDER;
}
else if (str[0] == 'A' || str[0] == 'a') {
- *val = PyArray_ANYORDER;
+ *val = NPY_ANYORDER;
+ }
+ else if (str[0] == 'K' || str[0] == 'k') {
+ *val = NPY_KEEPORDER;
}
else {
PyErr_SetString(PyExc_TypeError,
@@ -1482,10 +1485,10 @@ _prepend_ones(PyArrayObject *arr, int nd, int ndmin)
#define _ARET(x) PyArray_Return((PyArrayObject *)(x))
-#define STRIDING_OK(op, order) ((order) == PyArray_ANYORDER || \
- ((order) == PyArray_CORDER && \
+#define STRIDING_OK(op, order) ((order) == NPY_ANYORDER || \
+ ((order) == NPY_CORDER && \
PyArray_ISCONTIGUOUS(op)) || \
- ((order) == PyArray_FORTRANORDER && \
+ ((order) == NPY_FORTRANORDER && \
PyArray_ISFORTRAN(op)))
static PyObject *
@@ -1499,7 +1502,7 @@ _array_fromobject(PyObject *NPY_UNUSED(ignored), PyObject *args, PyObject *kws)
int ndmin = 0, nd;
PyArray_Descr *type = NULL;
PyArray_Descr *oldtype = NULL;
- NPY_ORDER order=PyArray_ANYORDER;
+ NPY_ORDER order=NPY_ANYORDER;
int flags = 0;
if (PyTuple_GET_SIZE(args) > 2) {
@@ -1560,11 +1563,11 @@ _array_fromobject(PyObject *NPY_UNUSED(ignored), PyObject *args, PyObject *kws)
if (copy) {
flags = ENSURECOPY;
}
- if (order == PyArray_CORDER) {
+ if (order == NPY_CORDER) {
flags |= CONTIGUOUS;
}
- else if ((order == PyArray_FORTRANORDER)
- /* order == PyArray_ANYORDER && */
+ else if ((order == NPY_FORTRANORDER)
+ /* order == NPY_ANYORDER && */
|| (PyArray_Check(op) && PyArray_ISFORTRAN(op))) {
flags |= FORTRAN;
}
@@ -1599,7 +1602,7 @@ array_empty(PyObject *NPY_UNUSED(ignored), PyObject *args, PyObject *kwds)
static char *kwlist[] = {"shape","dtype","order",NULL};
PyArray_Descr *typecode = NULL;
PyArray_Dims shape = {NULL, 0};
- NPY_ORDER order = PyArray_CORDER;
+ NPY_ORDER order = NPY_CORDER;
Bool fortran;
PyObject *ret = NULL;
@@ -1609,7 +1612,7 @@ array_empty(PyObject *NPY_UNUSED(ignored), PyObject *args, PyObject *kwds)
PyArray_OrderConverter, &order)) {
goto fail;
}
- if (order == PyArray_FORTRANORDER) {
+ if (order == NPY_FORTRANORDER) {
fortran = TRUE;
}
else {
@@ -1695,7 +1698,7 @@ array_zeros(PyObject *NPY_UNUSED(ignored), PyObject *args, PyObject *kwds)
static char *kwlist[] = {"shape","dtype","order",NULL}; /* XXX ? */
PyArray_Descr *typecode = NULL;
PyArray_Dims shape = {NULL, 0};
- NPY_ORDER order = PyArray_CORDER;
+ NPY_ORDER order = NPY_CORDER;
Bool fortran = FALSE;
PyObject *ret = NULL;
@@ -1705,7 +1708,7 @@ array_zeros(PyObject *NPY_UNUSED(ignored), PyObject *args, PyObject *kwds)
PyArray_OrderConverter, &order)) {
goto fail;
}
- if (order == PyArray_FORTRANORDER) {
+ if (order == NPY_FORTRANORDER) {
fortran = TRUE;
}
else {
diff --git a/numpy/core/src/multiarray/new_iterator_pywrap.c b/numpy/core/src/multiarray/new_iterator_pywrap.c
index 7dd50ab78..b03ef4b14 100644
--- a/numpy/core/src/multiarray/new_iterator_pywrap.c
+++ b/numpy/core/src/multiarray/new_iterator_pywrap.c
@@ -209,11 +209,11 @@ npyiter_order_converter(PyObject *order_in, NPY_ORDER *order)
return 0;
}
-/*
+/*NUMPY_API
* Convert any Python object, *obj*, to an NPY_CASTING enum.
- * TODO: Move elsewhere, add to the NumPy API.
+ * TODO: Move elsewhere
*/
-static int
+NPY_NO_EXPORT int
PyArray_CastingConverter(PyObject *obj, NPY_CASTING *casting)
{
char *str = NULL;