File: import_array.h

package info (click to toggle)
rdkit 202503.6-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 222,000 kB
  • sloc: cpp: 411,111; python: 78,482; ansic: 26,181; java: 8,285; javascript: 4,404; sql: 2,393; yacc: 1,626; lex: 1,267; cs: 1,090; makefile: 581; xml: 229; fortran: 183; sh: 121
file content (25 lines) | stat: -rw-r--r-- 666 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <RDGeneral/export.h>
#ifndef RDKIT_IMPORT_ARRAY_INCLUDED
#define RDKIT_IMPORT_ARRAY_INCLUDED

#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION
#include <numpy/arrayobject.h>

#if PY_MAJOR_VERSION >= 3
void *rdkit_import_array()
#else
void rdkit_import_array()
#endif
{
  // numpy's import_array is defined as a macro that expands into a block
  // statement that inlines a return. In python3 it returns a NULL value
  // (to comply with the Py_InitModule signature) so it can't be called
  // directly from within the BOOST_PYTHON_MODULE init function (that
  // returns void)
  import_array();
#if PY_MAJOR_VERSION >= 3
  return nullptr;
#endif
}

#endif