13
|
1 #include "object.h"
|
|
2
|
|
3 JSClass PYM_JS_ObjectClass = {
|
|
4 "PymonkeyObject", JSCLASS_GLOBAL_FLAGS,
|
|
5 JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub,
|
|
6 JS_EnumerateStub, JS_ResolveStub, JS_ConvertStub, JS_FinalizeStub,
|
|
7 JSCLASS_NO_OPTIONAL_MEMBERS
|
|
8 };
|
|
9
|
|
10 static void
|
|
11 PYM_JSObjectDealloc(PYM_JSObject *self)
|
|
12 {
|
|
13 // JS_RemoveRoot() always returns JS_TRUE, so don't
|
|
14 // bother checking its return value.
|
|
15
|
|
16 // Umm, we need a context... Crap.
|
|
17 //JS_RemoveRoot(
|
|
18 }
|
|
19
|
|
20 PyTypeObject PYM_JSObjectType = {
|
|
21 PyObject_HEAD_INIT(NULL)
|
|
22 0, /*ob_size*/
|
|
23 "pymonkey.Object", /*tp_name*/
|
|
24 sizeof(PYM_JSObject), /*tp_basicsize*/
|
|
25 0, /*tp_itemsize*/
|
|
26 /*tp_dealloc*/
|
|
27 (destructor) PYM_JSObjectDealloc,
|
|
28 0, /*tp_print*/
|
|
29 0, /*tp_getattr*/
|
|
30 0, /*tp_setattr*/
|
|
31 0, /*tp_compare*/
|
|
32 0, /*tp_repr*/
|
|
33 0, /*tp_as_number*/
|
|
34 0, /*tp_as_sequence*/
|
|
35 0, /*tp_as_mapping*/
|
|
36 0, /*tp_hash */
|
|
37 0, /*tp_call*/
|
|
38 0, /*tp_str*/
|
|
39 0, /*tp_getattro*/
|
|
40 0, /*tp_setattro*/
|
|
41 0, /*tp_as_buffer*/
|
|
42 Py_TPFLAGS_DEFAULT, /*tp_flags*/
|
|
43 /* tp_doc */
|
|
44 "JavaScript Object.",
|
|
45 0, /* tp_traverse */
|
|
46 0, /* tp_clear */
|
|
47 0, /* tp_richcompare */
|
|
48 0, /* tp_weaklistoffset */
|
|
49 0, /* tp_iter */
|
|
50 0, /* tp_iternext */
|
|
51 0, /* tp_methods */
|
|
52 0, /* tp_members */
|
|
53 0, /* tp_getset */
|
|
54 0, /* tp_base */
|
|
55 0, /* tp_dict */
|
|
56 0, /* tp_descr_get */
|
|
57 0, /* tp_descr_set */
|
|
58 0, /* tp_dictoffset */
|
|
59 0, /* tp_init */
|
|
60 0, /* tp_alloc */
|
|
61 0, /* tp_new */
|
|
62 };
|