17db96d56Sopenharmony_ci/* Complex number structure */ 27db96d56Sopenharmony_ci 37db96d56Sopenharmony_ci#ifndef Py_COMPLEXOBJECT_H 47db96d56Sopenharmony_ci#define Py_COMPLEXOBJECT_H 57db96d56Sopenharmony_ci#ifdef __cplusplus 67db96d56Sopenharmony_ciextern "C" { 77db96d56Sopenharmony_ci#endif 87db96d56Sopenharmony_ci 97db96d56Sopenharmony_ci/* Complex object interface */ 107db96d56Sopenharmony_ci 117db96d56Sopenharmony_ciPyAPI_DATA(PyTypeObject) PyComplex_Type; 127db96d56Sopenharmony_ci 137db96d56Sopenharmony_ci#define PyComplex_Check(op) PyObject_TypeCheck(op, &PyComplex_Type) 147db96d56Sopenharmony_ci#define PyComplex_CheckExact(op) Py_IS_TYPE(op, &PyComplex_Type) 157db96d56Sopenharmony_ci 167db96d56Sopenharmony_ciPyAPI_FUNC(PyObject *) PyComplex_FromDoubles(double real, double imag); 177db96d56Sopenharmony_ci 187db96d56Sopenharmony_ciPyAPI_FUNC(double) PyComplex_RealAsDouble(PyObject *op); 197db96d56Sopenharmony_ciPyAPI_FUNC(double) PyComplex_ImagAsDouble(PyObject *op); 207db96d56Sopenharmony_ci 217db96d56Sopenharmony_ci#ifndef Py_LIMITED_API 227db96d56Sopenharmony_ci# define Py_CPYTHON_COMPLEXOBJECT_H 237db96d56Sopenharmony_ci# include "cpython/complexobject.h" 247db96d56Sopenharmony_ci# undef Py_CPYTHON_COMPLEXOBJECT_H 257db96d56Sopenharmony_ci#endif 267db96d56Sopenharmony_ci 277db96d56Sopenharmony_ci#ifdef __cplusplus 287db96d56Sopenharmony_ci} 297db96d56Sopenharmony_ci#endif 307db96d56Sopenharmony_ci#endif /* !Py_COMPLEXOBJECT_H */ 31