MCPcopy Create free account
hub / github.com/pydata/numexpr / NumExprObject

Class NumExprObject

numexpr3/numexpr_object.hpp:50–69  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

48// https://docs.python.org/3/c-api/structures.html
49#define SIZEOF_PYOBJECT_HEAD sizeof(PyObject)
50struct NumExprObject
51{
52 PyObject_HEAD
53 struct NumExprOperation *program;
54 struct NumExprReg *registers;
55
56 // a chunk of raw memory for storing scalar BLOCKs, just a reference
57 // for efficient garbage collection.
58 char *scalar_mem;
59 npy_intp scalar_mem_size;
60 // temporaries need a block of memory at least sum(BLOCKSIZE1*total_temp_itemsize)
61 Py_ssize_t total_temp_itemsize;
62 int program_len;
63 NE_REGISTER n_reg;
64 NE_REGISTER n_array; // The number of arrays AND return registers
65 NE_REGISTER n_scalar;
66 NE_REGISTER n_temp;
67 NE_REGISTER returnReg; // The index of the return in registers, defaults to -1
68 NE_REGISTER returnOperand; // The index of the return in the iterator, defaults to -1
69};
70
71
72extern PyTypeObject NumExprType;

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…