1
#ifndef _MULTIARRAYMODULE
18
} PyShortScalarObject;
36
} PyLongLongScalarObject;
42
} PyUByteScalarObject;
48
} PyUShortScalarObject;
60
} PyULongScalarObject;
66
} PyULongLongScalarObject;
72
} PyFloatScalarObject;
78
} PyDoubleScalarObject;
84
} PyLongDoubleScalarObject;
90
} PyCFloatScalarObject;
96
} PyCDoubleScalarObject;
102
} PyCLongDoubleScalarObject;
108
} PyObjectScalarObject;
116
#define PyStringScalarObject PyStringObject
117
#define PyUnicodeScalarObject PyUnicodeObject
122
PyArray_Descr *descr;
125
} PyVoidScalarObject;
128
#define PyArrayScalar_False ((PyObject *)(&(_PyArrayScalar_BoolValues[0])))
129
#define PyArrayScalar_True ((PyObject *)(&(_PyArrayScalar_BoolValues[1])))
130
#define PyArrayScalar_FromLong(i) \
131
((PyObject *)(&(_PyArrayScalar_BoolValues[((i)!=0)])))
132
#define PyArrayScalar_RETURN_BOOL_FROM_LONG(i) \
133
return Py_INCREF(PyArrayScalar_FromLong(i)), \
134
PyArrayScalar_FromLong(i)
135
#define PyArrayScalar_RETURN_FALSE \
136
return Py_INCREF(PyArrayScalar_False), \
138
#define PyArrayScalar_RETURN_TRUE \
139
return Py_INCREF(PyArrayScalar_True), \
142
#define PyArrayScalar_New(cls) \
143
Py##cls##ArrType_Type.tp_alloc(&Py##cls##ArrType_Type, 0)
144
#define PyArrayScalar_VAL(obj, cls) \
145
((Py##cls##ScalarObject *)obj)->obval
146
#define PyArrayScalar_ASSIGN(obj, cls, val) \
147
PyArrayScalar_VAL(obj, cls) = val