MCPcopy Create free account
hub / github.com/numpy/numpy / set_flaginfo

Function set_flaginfo

numpy/core/src/multiarray/multiarraymodule.c:4907–4940  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4905/* place a flag dictionary in d */
4906
4907static void
4908set_flaginfo(PyObject *d)
4909{
4910 PyObject *s;
4911 PyObject *newd;
4912
4913 newd = PyDict_New();
4914
4915#define _addnew(key, val, one) \
4916 PyDict_SetItemString(newd, #key, s=PyLong_FromLong(val)); \
4917 Py_DECREF(s); \
4918 PyDict_SetItemString(newd, #one, s=PyLong_FromLong(val)); \
4919 Py_DECREF(s)
4920
4921#define _addone(key, val) \
4922 PyDict_SetItemString(newd, #key, s=PyLong_FromLong(val)); \
4923 Py_DECREF(s)
4924
4925 _addnew(OWNDATA, NPY_ARRAY_OWNDATA, O);
4926 _addnew(FORTRAN, NPY_ARRAY_F_CONTIGUOUS, F);
4927 _addnew(CONTIGUOUS, NPY_ARRAY_C_CONTIGUOUS, C);
4928 _addnew(ALIGNED, NPY_ARRAY_ALIGNED, A);
4929 _addnew(WRITEBACKIFCOPY, NPY_ARRAY_WRITEBACKIFCOPY, X);
4930 _addnew(WRITEABLE, NPY_ARRAY_WRITEABLE, W);
4931 _addone(C_CONTIGUOUS, NPY_ARRAY_C_CONTIGUOUS);
4932 _addone(F_CONTIGUOUS, NPY_ARRAY_F_CONTIGUOUS);
4933
4934#undef _addone
4935#undef _addnew
4936
4937 PyDict_SetItemString(d, "_flagdict", newd);
4938 Py_DECREF(newd);
4939 return;
4940}
4941
4942NPY_VISIBILITY_HIDDEN PyObject * npy_ma_str_current_allocator = NULL;
4943NPY_VISIBILITY_HIDDEN PyObject * npy_ma_str_array = NULL;

Callers 1

PyInit__multiarray_umathFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected