diff options
| author | Julian Andres Klode <jak@debian.org> | 2009-04-13 23:24:42 +0200 |
|---|---|---|
| committer | Julian Andres Klode <jak@debian.org> | 2009-04-13 23:24:42 +0200 |
| commit | daaa814658b6d2b8e3e2437fcc625096c46395dd (patch) | |
| tree | 0d8cdb5018706bb2dcb11757a461a55eb5b6e931 | |
| parent | ae7f143f8162d10c7bd834e8877e42674fdb646f (diff) | |
| download | python-apt-daaa814658b6d2b8e3e2437fcc625096c46395dd.tar.gz | |
* python/cdrom.cc, python/depcache.cc: Use tp_methods for Cdrom, ProblemResolver, ActionGroup
| -rw-r--r-- | python/apt_pkgmodule.cc | 4 | ||||
| -rw-r--r-- | python/apt_pkgmodule.h | 1 | ||||
| -rw-r--r-- | python/cdrom.cc | 32 | ||||
| -rw-r--r-- | python/depcache.cc | 50 |
4 files changed, 53 insertions, 34 deletions
diff --git a/python/apt_pkgmodule.cc b/python/apt_pkgmodule.cc index 3d043179..5d0b2c0a 100644 --- a/python/apt_pkgmodule.cc +++ b/python/apt_pkgmodule.cc @@ -478,6 +478,10 @@ extern "C" void initapt_pkg() if (PyType_Ready(&ConfigurationType) == -1) return; if (PyType_Ready(&ConfigurationPtrType) == -1) return; if (PyType_Ready(&ConfigurationSubType) == -1) return; + if (PyType_Ready(&PkgCdromType) == -1) return; + if (PyType_Ready(&PkgProblemResolverType) == -1) return; + if (PyType_Ready(&PkgActionGroupType) == -1) return; + // Initialize the module PyObject *Module = Py_InitModule("apt_pkg",methods); diff --git a/python/apt_pkgmodule.h b/python/apt_pkgmodule.h index e047bcd8..ea8e33df 100644 --- a/python/apt_pkgmodule.h +++ b/python/apt_pkgmodule.h @@ -71,6 +71,7 @@ extern PyTypeObject PkgProblemResolverType; PyObject *GetPkgProblemResolver(PyObject *Self, PyObject *Args); PyObject *GetPkgActionGroup(PyObject *Self, PyObject *Args); +extern PyTypeObject PkgActionGroupType; // cdrom extern PyTypeObject PkgCdromType; PyObject *GetCdrom(PyObject *Self,PyObject *Args); diff --git a/python/cdrom.cc b/python/cdrom.cc index 0831548e..1278d6b7 100644 --- a/python/cdrom.cc +++ b/python/cdrom.cc @@ -64,27 +64,17 @@ static PyMethodDef PkgCdromMethods[] = }; -static PyObject *CdromAttr(PyObject *Self,char *Name) -{ - PkgCdromStruct &Struct = GetCpp<PkgCdromStruct>(Self); - - return Py_FindMethod(PkgCdromMethods,Self,Name); -} - - - - PyTypeObject PkgCdromType = { PyObject_HEAD_INIT(&PyType_Type) - 0, // ob_size - "Cdrom", // tp_name + 0, // ob_size + "Cdrom", // tp_name sizeof(CppOwnedPyObject<PkgCdromStruct>), // tp_basicsize 0, // tp_itemsize // Methods - CppOwnedDealloc<PkgCdromStruct>, // tp_dealloc + CppOwnedDealloc<PkgCdromStruct>, // tp_dealloc 0, // tp_print - CdromAttr, // tp_getattr + 0, // tp_getattr 0, // tp_setattr 0, // tp_compare 0, // tp_repr @@ -92,6 +82,20 @@ PyTypeObject PkgCdromType = 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 + "Cdrom Object", // tp_doc + 0, // tp_traverse + 0, // tp_clear + 0, // tp_richcompare + 0, // tp_weaklistoffset + 0, // tp_iter + 0, // tp_iternext + PkgCdromMethods, // tp_methods }; PyObject *GetCdrom(PyObject *Self,PyObject *Args) diff --git a/python/depcache.cc b/python/depcache.cc index 0e83c956..b23eecd9 100644 --- a/python/depcache.cc +++ b/python/depcache.cc @@ -749,15 +749,6 @@ static PyMethodDef PkgProblemResolverMethods[] = {} }; - -static PyObject *ProblemResolverAttr(PyObject *Self,char *Name) -{ - pkgProblemResolver *fixer = GetCpp<pkgProblemResolver *>(Self); - - return Py_FindMethod(PkgProblemResolverMethods,Self,Name); -} - - PyTypeObject PkgProblemResolverType = { PyObject_HEAD_INIT(&PyType_Type) @@ -768,7 +759,7 @@ PyTypeObject PkgProblemResolverType = // Methods CppOwnedDealloc<pkgProblemResolver *>, // tp_dealloc 0, // tp_print - ProblemResolverAttr, // tp_getattr + 0, // tp_getattr 0, // tp_setattr 0, // tp_compare 0, // tp_repr @@ -776,6 +767,20 @@ PyTypeObject PkgProblemResolverType = 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 + "ProblemResolver Object", // tp_doc + 0, // tp_traverse + 0, // tp_clear + 0, // tp_richcompare + 0, // tp_weaklistoffset + 0, // tp_iter + 0, // tp_iternext + PkgProblemResolverMethods, // tp_methods }; /*}}}*/ @@ -800,15 +805,6 @@ static PyMethodDef PkgActionGroupMethods[] = {} }; - -static PyObject *ActionGroupAttr(PyObject *Self,char *Name) -{ - pkgDepCache::ActionGroup *ag = GetCpp<pkgDepCache::ActionGroup*>(Self); - - return Py_FindMethod(PkgActionGroupMethods,Self,Name); -} - - PyTypeObject PkgActionGroupType = { PyObject_HEAD_INIT(&PyType_Type) @@ -819,7 +815,7 @@ PyTypeObject PkgActionGroupType = // Methods CppOwnedDealloc<pkgDepCache::ActionGroup*>, // tp_dealloc 0, // tp_print - ActionGroupAttr, // tp_getattr + 0, // tp_getattr 0, // tp_setattr 0, // tp_compare 0, // tp_repr @@ -827,6 +823,20 @@ PyTypeObject PkgActionGroupType = 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 + "ActionGroup Object", // tp_doc + 0, // tp_traverse + 0, // tp_clear + 0, // tp_richcompare + 0, // tp_weaklistoffset + 0, // tp_iter + 0, // tp_iternext + PkgActionGroupMethods, // tp_methods }; PyObject *GetPkgActionGroup(PyObject *Self,PyObject *Args) |
