mirror of
https://github.com/wassname/ray.git
synced 2026-06-29 03:54:16 +08:00
7be1a93d64
* Move common C extension module into a different C file so that the actual definitions can be more easily included in other C extensions. * Rename common_extension_module -> common_module.
39 lines
996 B
C
39 lines
996 B
C
#include <Python.h>
|
|
#include "node.h"
|
|
|
|
#include "common_extension.h"
|
|
|
|
static PyMethodDef common_methods[] = {
|
|
{"check_simple_value", check_simple_value, METH_VARARGS,
|
|
"Should the object be passed by value?"},
|
|
{NULL} /* Sentinel */
|
|
};
|
|
|
|
#ifndef PyMODINIT_FUNC /* declarations for DLL import/export */
|
|
#define PyMODINIT_FUNC void
|
|
#endif
|
|
|
|
PyMODINIT_FUNC initcommon(void) {
|
|
PyObject *m;
|
|
|
|
if (PyType_Ready(&PyTaskType) < 0)
|
|
return;
|
|
|
|
if (PyType_Ready(&PyObjectIDType) < 0)
|
|
return;
|
|
|
|
m = Py_InitModule3("common", common_methods,
|
|
"A module for common types. This is used for testing.");
|
|
|
|
Py_INCREF(&PyTaskType);
|
|
PyModule_AddObject(m, "Task", (PyObject *) &PyTaskType);
|
|
|
|
Py_INCREF(&PyObjectIDType);
|
|
PyModule_AddObject(m, "ObjectID", (PyObject *) &PyObjectIDType);
|
|
|
|
char common_error[] = "common.error";
|
|
CommonError = PyErr_NewException(common_error, NULL, NULL);
|
|
Py_INCREF(CommonError);
|
|
PyModule_AddObject(m, "common_error", CommonError);
|
|
}
|