blob: 669d11b269fb761215a027137fb338a8de4d70a8 [file] [log] [blame]
Guido van Rossum026f01a1996-09-06 21:16:21 +00001#include "Python.h"
2
3static PyObject *
Thomas Wouters78890102000-07-22 19:25:51 +00004ex_foo(PyObject *self, PyObject *args)
Guido van Rossum026f01a1996-09-06 21:16:21 +00005{
Antoine Pitrouf95a1b32010-05-09 15:52:27 +00006 printf("Hello, world\n");
7 Py_INCREF(Py_None);
8 return Py_None;
Guido van Rossum026f01a1996-09-06 21:16:21 +00009}
10
11static PyMethodDef example_methods[] = {
Antoine Pitrouf95a1b32010-05-09 15:52:27 +000012 {"foo", ex_foo, METH_VARARGS, "foo() doc string"},
13 {NULL, NULL}
Guido van Rossum026f01a1996-09-06 21:16:21 +000014};
15
Georg Brandl574b1272009-01-02 19:20:26 +000016static struct PyModuleDef examplemodule = {
Antoine Pitrouf95a1b32010-05-09 15:52:27 +000017 PyModuleDef_HEAD_INIT,
18 "example",
19 "example module doc string",
20 -1,
21 example_methods,
22 NULL,
23 NULL,
24 NULL,
25 NULL
Georg Brandl574b1272009-01-02 19:20:26 +000026};
27
Thomas Wouters477c8d52006-05-27 19:21:47 +000028PyMODINIT_FUNC
Georg Brandl574b1272009-01-02 19:20:26 +000029PyInit_example(void)
Guido van Rossum026f01a1996-09-06 21:16:21 +000030{
Antoine Pitrouf95a1b32010-05-09 15:52:27 +000031 return PyModule_Create(&examplemodule);
Guido van Rossum026f01a1996-09-06 21:16:21 +000032}