From b36355f7953683ae4ae75f48bbae650bf2a04829 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Thu, 18 Jan 2018 19:42:56 +0100 Subject: [PATCH] libpakfire: Move pakfire_pool_count to pakfire_count_packages Signed-off-by: Michael Tremer --- src/_pakfire/pakfire.c | 9 +++++++++ src/_pakfire/pool.c | 11 ----------- src/libpakfire/include/pakfire/pakfire.h | 4 ++++ src/libpakfire/include/pakfire/pool.h | 2 -- src/libpakfire/libpakfire.sym | 2 +- src/libpakfire/pakfire.c | 14 ++++++++++++++ src/libpakfire/pool.c | 13 ------------- 7 files changed, 28 insertions(+), 27 deletions(-) diff --git a/src/_pakfire/pakfire.c b/src/_pakfire/pakfire.c index 2a9a52bc9..6fbde87de 100644 --- a/src/_pakfire/pakfire.c +++ b/src/_pakfire/pakfire.c @@ -256,6 +256,10 @@ static int Pakfire_set_installonly(PakfireObject* self, PyObject* value) { return 0; } +static Py_ssize_t Pakfire_len(PakfireObject* self) { + return pakfire_count_packages(self->pakfire); +} + static struct PyMethodDef Pakfire_methods[] = { { "generate_key", @@ -335,6 +339,10 @@ static struct PyGetSetDef Pakfire_getsetters[] = { { NULL }, }; +static PySequenceMethods Pakfire_sequence = { + sq_length: (lenfunc)Pakfire_len, +}; + PyTypeObject PakfireType = { PyVarObject_HEAD_INIT(NULL, 0) tp_name: "_pakfire.Pakfire", @@ -347,4 +355,5 @@ PyTypeObject PakfireType = { tp_methods: Pakfire_methods, tp_getset: Pakfire_getsetters, tp_repr: (reprfunc)Pakfire_repr, + tp_as_sequence: &Pakfire_sequence, }; diff --git a/src/_pakfire/pool.c b/src/_pakfire/pool.c index dcae7b6fb..e92539336 100644 --- a/src/_pakfire/pool.c +++ b/src/_pakfire/pool.c @@ -63,12 +63,6 @@ static int Pool_init(PoolObject* self, PyObject* args, PyObject* kwds) { return 0; } -static Py_ssize_t Pool_len(PoolObject* self) { - return pakfire_pool_count(self->pool); -} - - - static PyObject* Pool_get_cache_path(PoolObject* self) { const char* path = pakfire_pool_get_cache_path(self->pool); if (!path) @@ -96,10 +90,6 @@ static struct PyGetSetDef Pool_getsetters[] = { { NULL } }; -static PySequenceMethods Pool_sequence = { - sq_length: (lenfunc)Pool_len, -}; - PyTypeObject PoolType = { PyVarObject_HEAD_INIT(NULL, 0) tp_name: "_pakfire.Pool", @@ -110,5 +100,4 @@ PyTypeObject PoolType = { tp_init: (initproc)Pool_init, tp_doc: "Pool object", tp_getset: Pool_getsetters, - tp_as_sequence: &Pool_sequence, }; diff --git a/src/libpakfire/include/pakfire/pakfire.h b/src/libpakfire/include/pakfire/pakfire.h index 5cf492dad..e7aea8cbf 100644 --- a/src/libpakfire/include/pakfire/pakfire.h +++ b/src/libpakfire/include/pakfire/pakfire.h @@ -21,6 +21,8 @@ #ifndef PAKFIRE_PAKFIRE_H #define PAKFIRE_PAKFIRE_H +#include + #include int pakfire_init(); @@ -40,6 +42,8 @@ void pakfire_set_installonly(Pakfire pakfire, const char** installonly); int pakfire_version_compare(Pakfire pakfire, const char* evr1, const char* evr2); +size_t pakfire_count_packages(Pakfire pakfire); + PakfireRepo pakfire_get_installed_repo(Pakfire pakfire); void pakfire_set_installed_repo(Pakfire pakfire, PakfireRepo repo); diff --git a/src/libpakfire/include/pakfire/pool.h b/src/libpakfire/include/pakfire/pool.h index 01a5df653..3759442dd 100644 --- a/src/libpakfire/include/pakfire/pool.h +++ b/src/libpakfire/include/pakfire/pool.h @@ -28,8 +28,6 @@ PakfirePool pakfire_pool_create(Pakfire pakfire); PakfirePool pakfire_pool_ref(PakfirePool pool); PakfirePool pakfire_pool_unref(PakfirePool pool); -int pakfire_pool_count(PakfirePool pool); - const char* pakfire_pool_get_cache_path(PakfirePool pool); void pakfire_pool_set_cache_path(PakfirePool pool, const char* path); PakfireCache pakfire_pool_get_cache(PakfirePool pool); diff --git a/src/libpakfire/libpakfire.sym b/src/libpakfire/libpakfire.sym index 8bebf05b0..997824a4a 100644 --- a/src/libpakfire/libpakfire.sym +++ b/src/libpakfire/libpakfire.sym @@ -22,6 +22,7 @@ LIBPAKFIRE_0 { global: # pakfire pakfire_init; + pakfire_count_packages; pakfire_create; pakfire_get_arch; pakfire_get_installed_repo; @@ -202,7 +203,6 @@ global: pakfire_packagelist_unref; # pool - pakfire_pool_count; pakfire_pool_create; pakfire_pool_get_cache_path; pakfire_pool_ref; diff --git a/src/libpakfire/pakfire.c b/src/libpakfire/pakfire.c index 78127f2eb..d28abda7a 100644 --- a/src/libpakfire/pakfire.c +++ b/src/libpakfire/pakfire.c @@ -18,6 +18,8 @@ # # #############################################################################*/ +#include + #include #include #include @@ -151,6 +153,18 @@ void pakfire_pool_has_changed(Pakfire pakfire) { pakfire->pool_ready = 0; } +PAKFIRE_EXPORT size_t pakfire_count_packages(Pakfire pakfire) { + size_t cnt = 0; + + for (int i = 2; i < pakfire->pool->nsolvables; i++) { + Solvable* s = pakfire->pool->solvables + i; + if (s->repo) + cnt++; + } + + return cnt; +} + void pakfire_pool_apply_changes(Pakfire pakfire) { if (!pakfire->pool_ready) { pool_addfileprovides(pakfire->pool); diff --git a/src/libpakfire/pool.c b/src/libpakfire/pool.c index 8761214e3..da91c706d 100644 --- a/src/libpakfire/pool.c +++ b/src/libpakfire/pool.c @@ -83,19 +83,6 @@ Pool* pakfire_pool_get_solv_pool(PakfirePool pool) { return pakfire_get_solv_pool(pool->pakfire); } -PAKFIRE_EXPORT int pakfire_pool_count(PakfirePool pool) { - Pool* p = pakfire_get_solv_pool(pool->pakfire); - int cnt = 0; - - for (int i = 2; i < p->nsolvables; i++) { - Solvable* s = p->solvables + i; - if (s->repo) - cnt++; - } - - return cnt; -} - PAKFIRE_EXPORT const char* pakfire_pool_get_cache_path(PakfirePool pool) { if (!pool->cache) return NULL; -- 2.39.5