/* * Test the limited C API. * * The 'test_*' functions exported by this module are run as part of the * standard Python regression test, via Lib/test/test_capi.py. */ #include "_testlimitedcapi/parts.h" static PyMethodDef TestMethods[] = { {NULL, NULL} /* sentinel */ }; static struct PyModuleDef _testlimitedcapimodule = { PyModuleDef_HEAD_INIT, .m_name = "_testlimitedcapi", .m_size = 0, .m_methods = TestMethods, }; PyMODINIT_FUNC PyInit__testlimitedcapi(void) { PyObject *mod = PyModule_Create(&_testlimitedcapimodule); if (mod == NULL) { return NULL; } #ifdef Py_GIL_DISABLED PyUnstable_Module_SetGIL(mod, Py_MOD_GIL_NOT_USED); #endif if (_PyTestLimitedCAPI_Init_Abstract(mod) < 0) { return NULL; } if (_PyTestLimitedCAPI_Init_ByteArray(mod) < 0) { return NULL; } if (_PyTestLimitedCAPI_Init_Bytes(mod) < 0) { return NULL; } if (_PyTestLimitedCAPI_Init_Complex(mod) < 0) { return NULL; } if (_PyTestLimitedCAPI_Init_Dict(mod) < 0) { return NULL; } if (_PyTestLimitedCAPI_Init_Float(mod) < 0) { return NULL; } if (_PyTestLimitedCAPI_Init_HeaptypeRelative(mod) < 0) { return NULL; } if (_PyTestLimitedCAPI_Init_List(mod) < 0) { return NULL; } if (_PyTestLimitedCAPI_Init_Long(mod) < 0) { return NULL; } if (_PyTestLimitedCAPI_Init_Object(mod) < 0) { return NULL; } if (_PyTestLimitedCAPI_Init_PyOS(mod) < 0) { return NULL; } if (_PyTestLimitedCAPI_Init_Set(mod) < 0) { return NULL; } if (_PyTestLimitedCAPI_Init_Sys(mod) < 0) { return NULL; } if (_PyTestLimitedCAPI_Init_Tuple(mod) < 0) { return NULL; } if (_PyTestLimitedCAPI_Init_Unicode(mod) < 0) { return NULL; } if (_PyTestLimitedCAPI_Init_VectorcallLimited(mod) < 0) { return NULL; } return mod; }