-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdobj.c
50 lines (48 loc) · 2.04 KB
/
dobj.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include "dobj.h"
static void dobj_dealloc(DObj *self)
{
//printf("freeing memory %x\n", self->memory);
free(self->memory);
Py_TYPE(self)->tp_free((PyObject *)self);
}
PyTypeObject dObjType =
{
PyVarObject_HEAD_INIT(NULL, 0)
"dObj", // tp_name
sizeof(DObj), // tp_basicsize
0, // tp_itemsize
(destructor)dobj_dealloc, // tp_dealloc
0, // tp_print
0, // tp_getattr
0, // tp_setattr
0, // tp_reserved
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
"deallocator object", // tp_doc
0, // tp_traverse
0, // tp_clear
0, // tp_richcompare
0, // tp_weaklistoffset
0, // tp_iter
0, // tp_iternext
0, // tp_methods
0, // tp_members
0, // tp_getset
0, // tp_base
0, // tp_dict
0, // tp_descr_get
0, // tp_descr_set
0, // tp_dictoffset
0, // tp_init
0, // tp_alloc
PyType_GenericNew // tp_new
};