diff options
Diffstat (limited to 'Modules')
-rw-r--r-- | Modules/timingmodule.c | 94 |
1 files changed, 45 insertions, 49 deletions
diff --git a/Modules/timingmodule.c b/Modules/timingmodule.c index f4fd1ab..a07ecef 100644 --- a/Modules/timingmodule.c +++ b/Modules/timingmodule.c @@ -2,90 +2,86 @@ * Author: George V. Neville-Neil */ -#include "allobjects.h" -#include "import.h" -#include "modsupport.h" -#include "ceval.h" +#include "Python.h" /* Our stuff... */ #include "timing.h" -static object * +static PyObject * start_timing(self, args) - object *self; - object *args; + PyObject *self; + PyObject *args; { - if (!getargs(args, "")) - return NULL; + if (!PyArg_Parse(args, "")) + return NULL; - INCREF(None); - BEGINTIMING; - return None; + Py_INCREF(Py_None); + BEGINTIMING; + return Py_None; } -static object * +static PyObject * finish_timing(self, args) - object *self; - object *args; + PyObject *self; + PyObject *args; { - if (!getargs(args, "")) - return NULL; + if (!PyArg_Parse(args, "")) + return NULL; - ENDTIMING - INCREF(None); - return None; + ENDTIMING + Py_INCREF(Py_None); + return Py_None; } -static object * +static PyObject * seconds(self, args) - object *self; - object *args; + PyObject *self; + PyObject *args; { - if (!getargs(args, "")) - return NULL; + if (!PyArg_Parse(args, "")) + return NULL; - return newintobject(TIMINGS); + return PyInt_FromLong(TIMINGS); } -static object * +static PyObject * milli(self, args) - object *self; - object *args; + PyObject *self; + PyObject *args; { - if (!getargs(args, "")) - return NULL; + if (!PyArg_Parse(args, "")) + return NULL; - return newintobject(TIMINGMS); + return PyInt_FromLong(TIMINGMS); } -static object * +static PyObject * micro(self, args) - object *self; - object *args; + PyObject *self; + PyObject *args; { - if (!getargs(args, "")) - return NULL; + if (!PyArg_Parse(args, "")) + return NULL; - return newintobject(TIMINGUS); + return PyInt_FromLong(TIMINGUS); } -static struct methodlist timing_methods[] = { - {"start", start_timing}, - {"finish", finish_timing}, - {"seconds", seconds}, - {"milli", milli}, - {"micro", micro}, - {NULL, NULL} +static PyMethodDef timing_methods[] = { + {"start", start_timing}, + {"finish", finish_timing}, + {"seconds", seconds}, + {"milli", milli}, + {"micro", micro}, + {NULL, NULL} }; void inittiming() { - object *m; - - m = initmodule("timing", timing_methods); - + (void)Py_InitModule("timing", timing_methods); + if (PyErr_Occurred()) + Py_FatalError("can't initialize module timing"); } |