summaryrefslogtreecommitdiffstats
path: root/Doc/includes/noddy.c
diff options
context:
space:
mode:
Diffstat (limited to 'Doc/includes/noddy.c')
-rw-r--r--Doc/includes/noddy.c54
1 files changed, 54 insertions, 0 deletions
diff --git a/Doc/includes/noddy.c b/Doc/includes/noddy.c
new file mode 100644
index 0000000..ec2d669
--- /dev/null
+++ b/Doc/includes/noddy.c
@@ -0,0 +1,54 @@
+#include <Python.h>
+
+typedef struct {
+ PyObject_HEAD
+ /* Type-specific fields go here. */
+} noddy_NoddyObject;
+
+static PyTypeObject noddy_NoddyType = {
+ PyObject_HEAD_INIT(NULL)
+ 0, /*ob_size*/
+ "noddy.Noddy", /*tp_name*/
+ sizeof(noddy_NoddyObject), /*tp_basicsize*/
+ 0, /*tp_itemsize*/
+ 0, /*tp_dealloc*/
+ 0, /*tp_print*/
+ 0, /*tp_getattr*/
+ 0, /*tp_setattr*/
+ 0, /*tp_compare*/
+ 0, /*tp_repr*/
+ 0, /*tp_as_number*/
+ 0, /*tp_as_sequence*/
+ 0, /*tp_as_mapping*/
+ 0, /*tp_hash */
+ 0, /*tp_call*/
+ 0, /*tp_str*/
+ 0, /*tp_getattro*/
+ 0, /*tp_setattro*/
+ 0, /*tp_as_buffer*/
+ Py_TPFLAGS_DEFAULT, /*tp_flags*/
+ "Noddy objects", /* tp_doc */
+};
+
+static PyMethodDef noddy_methods[] = {
+ {NULL} /* Sentinel */
+};
+
+#ifndef PyMODINIT_FUNC /* declarations for DLL import/export */
+#define PyMODINIT_FUNC void
+#endif
+PyMODINIT_FUNC
+initnoddy(void)
+{
+ PyObject* m;
+
+ noddy_NoddyType.tp_new = PyType_GenericNew;
+ if (PyType_Ready(&noddy_NoddyType) < 0)
+ return;
+
+ m = Py_InitModule3("noddy", noddy_methods,
+ "Example module that creates an extension type.");
+
+ Py_INCREF(&noddy_NoddyType);
+ PyModule_AddObject(m, "Noddy", (PyObject *)&noddy_NoddyType);
+}