]> git.ipfire.org Git - pakfire.git/commitdiff
package: Use solvable_*_deparray instead of idarray
authorMichael Tremer <michael.tremer@ipfire.org>
Thu, 11 Feb 2021 14:59:15 +0000 (14:59 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Thu, 11 Feb 2021 14:59:15 +0000 (14:59 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/libpakfire/package.c

index 811e6c436fd0ec43829027c1bae46d85ddaadc4a..d4ab636380e569870ec37147ebfdfb3fb29a763c 100644 (file)
@@ -528,12 +528,13 @@ PAKFIRE_EXPORT unsigned long long pakfire_package_get_installtime(PakfirePackage
        return pakfire_package_get_num(pkg, SOLVABLE_INSTALLTIME);
 }
 
-static PakfireRelationList pakfire_package_get_relationlist(PakfirePackage pkg, Id type) {
+static PakfireRelationList pakfire_package_get_relationlist(
+               PakfirePackage pkg, Id type, Id marker) {
        Queue q;
        queue_init(&q);
 
        Solvable* s = get_solvable(pkg);
-       solvable_lookup_idarray(s, type, &q);
+       solvable_lookup_deparray(s, type, &q, marker);
 
        PakfireRelationList list;
        int r = pakfire_relationlist_from_queue(&list, pkg->pakfire, q);
@@ -546,35 +547,37 @@ static PakfireRelationList pakfire_package_get_relationlist(PakfirePackage pkg,
        return list;
 }
 
-static void pakfire_package_set_relationlist(PakfirePackage pkg, Id type, PakfireRelationList relationlist) {
+static void pakfire_package_set_relationlist(PakfirePackage pkg, Id type,
+               PakfireRelationList relationlist, Id marker) {
        Solvable* s = get_solvable(pkg);
        Queue* q = pakfire_relationlist_get_queue(relationlist);
 
 #if 0
        // This implemention should be the fastest, but unfortunately does not work.
-       solvable_set_idarray(s, type, q);
+       solvable_set_deparray(s, type, q, marker);
 #else
        for (int i = 0; i < q->count; i++)
-               solvable_add_idarray(s, type, q->elements[i]);
+               solvable_add_deparray(s, type, q->elements[i], marker);
 #endif
 }
 
-static void pakfire_package_add_relation(PakfirePackage pkg, Id type, PakfireRelation relation) {
+static void pakfire_package_add_relation(PakfirePackage pkg, Id type,
+               PakfireRelation relation, Id marker) {
        Solvable* s = get_solvable(pkg);
 
-       solvable_add_idarray(s, type, pakfire_relation_get_id(relation));
+       solvable_add_deparray(s, type, pakfire_relation_get_id(relation), marker);
 }
 
 PAKFIRE_EXPORT PakfireRelationList pakfire_package_get_provides(PakfirePackage pkg) {
-       return pakfire_package_get_relationlist(pkg, SOLVABLE_PROVIDES);
+       return pakfire_package_get_relationlist(pkg, SOLVABLE_PROVIDES, 0);
 }
 
 PAKFIRE_EXPORT void pakfire_package_set_provides(PakfirePackage pkg, PakfireRelationList relationlist) {
-       pakfire_package_set_relationlist(pkg, SOLVABLE_PROVIDES, relationlist);
+       pakfire_package_set_relationlist(pkg, SOLVABLE_PROVIDES, relationlist, 0);
 }
 
 PAKFIRE_EXPORT void pakfire_package_add_provides(PakfirePackage pkg, PakfireRelation relation) {
-       pakfire_package_add_relation(pkg, SOLVABLE_PROVIDES, relation);
+       pakfire_package_add_relation(pkg, SOLVABLE_PROVIDES, relation, 0);
 }
 
 PAKFIRE_EXPORT PakfireRelationList pakfire_package_get_prerequires(PakfirePackage pkg) {
@@ -587,63 +590,63 @@ PAKFIRE_EXPORT void pakfire_package_set_prerequires(PakfirePackage pkg, PakfireR
 }
 
 PAKFIRE_EXPORT PakfireRelationList pakfire_package_get_requires(PakfirePackage pkg) {
-       return pakfire_package_get_relationlist(pkg, SOLVABLE_REQUIRES);
+       return pakfire_package_get_relationlist(pkg, SOLVABLE_REQUIRES, 0);
 }
 
 PAKFIRE_EXPORT void pakfire_package_set_requires(PakfirePackage pkg, PakfireRelationList relationlist) {
-       pakfire_package_set_relationlist(pkg, SOLVABLE_REQUIRES, relationlist);
+       pakfire_package_set_relationlist(pkg, SOLVABLE_REQUIRES, relationlist, 0);
 }
 
 PAKFIRE_EXPORT void pakfire_package_add_requires(PakfirePackage pkg, PakfireRelation relation) {
-       pakfire_package_add_relation(pkg, SOLVABLE_REQUIRES, relation);
+       pakfire_package_add_relation(pkg, SOLVABLE_REQUIRES, relation, 0);
 }
 
 PAKFIRE_EXPORT PakfireRelationList pakfire_package_get_conflicts(PakfirePackage pkg) {
-       return pakfire_package_get_relationlist(pkg, SOLVABLE_CONFLICTS);
+       return pakfire_package_get_relationlist(pkg, SOLVABLE_CONFLICTS, 0);
 }
 
 PAKFIRE_EXPORT void pakfire_package_set_conflicts(PakfirePackage pkg, PakfireRelationList relationlist) {
-       pakfire_package_set_relationlist(pkg, SOLVABLE_CONFLICTS, relationlist);
+       pakfire_package_set_relationlist(pkg, SOLVABLE_CONFLICTS, relationlist, 0);
 }
 
 PAKFIRE_EXPORT void pakfire_package_add_conflicts(PakfirePackage pkg, PakfireRelation relation) {
-       pakfire_package_add_relation(pkg, SOLVABLE_CONFLICTS, relation);
+       pakfire_package_add_relation(pkg, SOLVABLE_CONFLICTS, relation, 0);
 }
 
 PAKFIRE_EXPORT PakfireRelationList pakfire_package_get_obsoletes(PakfirePackage pkg) {
-       return pakfire_package_get_relationlist(pkg, SOLVABLE_OBSOLETES);
+       return pakfire_package_get_relationlist(pkg, SOLVABLE_OBSOLETES, 0);
 }
 
 PAKFIRE_EXPORT void pakfire_package_set_obsoletes(PakfirePackage pkg, PakfireRelationList relationlist) {
-       pakfire_package_set_relationlist(pkg, SOLVABLE_OBSOLETES, relationlist);
+       pakfire_package_set_relationlist(pkg, SOLVABLE_OBSOLETES, relationlist, 0);
 }
 
 PAKFIRE_EXPORT void pakfire_package_add_obsoletes(PakfirePackage pkg, PakfireRelation relation) {
-       pakfire_package_add_relation(pkg, SOLVABLE_OBSOLETES, relation);
+       pakfire_package_add_relation(pkg, SOLVABLE_OBSOLETES, relation, 0);
 }
 
 PAKFIRE_EXPORT PakfireRelationList pakfire_package_get_recommends(PakfirePackage pkg) {
-       return pakfire_package_get_relationlist(pkg, SOLVABLE_RECOMMENDS);
+       return pakfire_package_get_relationlist(pkg, SOLVABLE_RECOMMENDS, 0);
 }
 
 PAKFIRE_EXPORT void pakfire_package_set_recommends(PakfirePackage pkg, PakfireRelationList relationlist) {
-       pakfire_package_set_relationlist(pkg, SOLVABLE_RECOMMENDS, relationlist);
+       pakfire_package_set_relationlist(pkg, SOLVABLE_RECOMMENDS, relationlist, 0);
 }
 
 PAKFIRE_EXPORT void pakfire_package_add_recommends(PakfirePackage pkg, PakfireRelation relation) {
-       pakfire_package_add_relation(pkg, SOLVABLE_RECOMMENDS, relation);
+       pakfire_package_add_relation(pkg, SOLVABLE_RECOMMENDS, relation, 0);
 }
 
 PAKFIRE_EXPORT PakfireRelationList pakfire_package_get_suggests(PakfirePackage pkg) {
-       return pakfire_package_get_relationlist(pkg, SOLVABLE_SUGGESTS);
+       return pakfire_package_get_relationlist(pkg, SOLVABLE_SUGGESTS, 0);
 }
 
 PAKFIRE_EXPORT void pakfire_package_set_suggests(PakfirePackage pkg, PakfireRelationList relationlist) {
-       pakfire_package_set_relationlist(pkg, SOLVABLE_SUGGESTS, relationlist);
+       pakfire_package_set_relationlist(pkg, SOLVABLE_SUGGESTS, relationlist, 0);
 }
 
 PAKFIRE_EXPORT void pakfire_package_add_suggests(PakfirePackage pkg, PakfireRelation relation) {
-       pakfire_package_add_relation(pkg, SOLVABLE_SUGGESTS, relation);
+       pakfire_package_add_relation(pkg, SOLVABLE_SUGGESTS, relation, 0);
 }
 
 PAKFIRE_EXPORT PakfireRepo pakfire_package_get_repo(PakfirePackage pkg) {