From bdf00d3dbd19c3def6127f3d372d630930a26abb Mon Sep 17 00:00:00 2001 From: Dan McGee Date: Thu, 16 Jun 2011 11:27:44 -0500 Subject: Make pmfileconflict_t type public This removes the need to write accessor methods for every type we have, and simplifies the API. Any type that doesn't need magic* can be converted in this fashion to make it easier for frontend applications to use, as well as make it less of a pain to introduce new such structs in the future. * "magic" meaning something like pmpkg_t where values can be lazy loaded. Signed-off-by: Dan McGee --- src/pacman/sync.c | 9 +++------ src/pacman/upgrade.c | 9 +++------ 2 files changed, 6 insertions(+), 12 deletions(-) (limited to 'src') diff --git a/src/pacman/sync.c b/src/pacman/sync.c index 37b9d6e3..2c21d573 100644 --- a/src/pacman/sync.c +++ b/src/pacman/sync.c @@ -849,17 +849,14 @@ static int sync_trans(alpm_list_t *targets) case PM_ERR_FILE_CONFLICTS: for(i = data; i; i = alpm_list_next(i)) { pmfileconflict_t *conflict = alpm_list_getdata(i); - switch(alpm_fileconflict_get_type(conflict)) { + switch(conflict->type) { case PM_FILECONFLICT_TARGET: printf(_("%s exists in both '%s' and '%s'\n"), - alpm_fileconflict_get_file(conflict), - alpm_fileconflict_get_target(conflict), - alpm_fileconflict_get_ctarget(conflict)); + conflict->file, conflict->target, conflict->ctarget); break; case PM_FILECONFLICT_FILESYSTEM: printf(_("%s: %s exists in filesystem\n"), - alpm_fileconflict_get_target(conflict), - alpm_fileconflict_get_file(conflict)); + conflict->target, conflict->file); break; } } diff --git a/src/pacman/upgrade.c b/src/pacman/upgrade.c index c0466456..37cf7007 100644 --- a/src/pacman/upgrade.c +++ b/src/pacman/upgrade.c @@ -173,17 +173,14 @@ int pacman_upgrade(alpm_list_t *targets) case PM_ERR_FILE_CONFLICTS: for(i = data; i; i = alpm_list_next(i)) { pmfileconflict_t *conflict = alpm_list_getdata(i); - switch(alpm_fileconflict_get_type(conflict)) { + switch(conflict->type) { case PM_FILECONFLICT_TARGET: printf(_("%s exists in both '%s' and '%s'\n"), - alpm_fileconflict_get_file(conflict), - alpm_fileconflict_get_target(conflict), - alpm_fileconflict_get_ctarget(conflict)); + conflict->file, conflict->target, conflict->ctarget); break; case PM_FILECONFLICT_FILESYSTEM: printf(_("%s: %s exists in filesystem\n"), - alpm_fileconflict_get_target(conflict), - alpm_fileconflict_get_file(conflict)); + conflict->target, conflict->file); break; } } -- cgit v1.2.3 From 19fcc7401666cd892f7b8a5a49854a1b2eb9988b Mon Sep 17 00:00:00 2001 From: Dan McGee Date: Thu, 16 Jun 2011 11:33:20 -0500 Subject: Make struct pmconflict_t public Signed-off-by: Dan McGee --- src/pacman/sync.c | 12 ++++++------ src/pacman/upgrade.c | 13 ++++++------- src/util/testdb.c | 4 ++-- 3 files changed, 14 insertions(+), 15 deletions(-) (limited to 'src') diff --git a/src/pacman/sync.c b/src/pacman/sync.c index 2c21d573..254117a7 100644 --- a/src/pacman/sync.c +++ b/src/pacman/sync.c @@ -795,14 +795,14 @@ static int sync_trans(alpm_list_t *targets) case PM_ERR_CONFLICTING_DEPS: for(i = data; i; i = alpm_list_next(i)) { pmconflict_t *conflict = alpm_list_getdata(i); - const char *package1 = alpm_conflict_get_package1(conflict); - const char *package2 = alpm_conflict_get_package2(conflict); - const char *reason = alpm_conflict_get_reason(conflict); /* only print reason if it contains new information */ - if(strcmp(package1, reason) == 0 || strcmp(package2, reason) == 0) { - printf(_(":: %s and %s are in conflict\n"), package1, package2); + if(strcmp(conflict->package1, conflict->reason) == 0 || + strcmp(conflict->package2, conflict->reason) == 0) { + printf(_(":: %s and %s are in conflict\n"), + conflict->package1, conflict->package2); } else { - printf(_(":: %s and %s are in conflict (%s)\n"), package1, package2, reason); + printf(_(":: %s and %s are in conflict (%s)\n"), + conflict->package1, conflict->package2, conflict->reason); } } break; diff --git a/src/pacman/upgrade.c b/src/pacman/upgrade.c index 37cf7007..0abcbe4e 100644 --- a/src/pacman/upgrade.c +++ b/src/pacman/upgrade.c @@ -121,14 +121,13 @@ int pacman_upgrade(alpm_list_t *targets) case PM_ERR_CONFLICTING_DEPS: for(i = data; i; i = alpm_list_next(i)) { pmconflict_t *conflict = alpm_list_getdata(i); - const char *package1 = alpm_conflict_get_package1(conflict); - const char *package2 = alpm_conflict_get_package2(conflict); - const char *reason = alpm_conflict_get_reason(conflict); - /* only print reason if it contains new information */ - if(strcmp(package1, reason) == 0 || strcmp(package2, reason) == 0) { - printf(_(":: %s and %s are in conflict\n"), package1, package2); + if(strcmp(conflict->package1, conflict->reason) == 0 || + strcmp(conflict->package2, conflict->reason) == 0) { + printf(_(":: %s and %s are in conflict\n"), + conflict->package1, conflict->package2); } else { - printf(_(":: %s and %s are in conflict (%s)\n"), package1, package2, reason); + printf(_(":: %s and %s are in conflict (%s)\n"), + conflict->package1, conflict->package2, conflict->reason); } } break; diff --git a/src/util/testdb.c b/src/util/testdb.c index 0bd78202..aeccdb7c 100644 --- a/src/util/testdb.c +++ b/src/util/testdb.c @@ -120,8 +120,8 @@ static int checkconflicts(alpm_list_t *pkglist) data = alpm_checkconflicts(handle, pkglist); for(i = data; i; i = i->next) { pmconflict_t *conflict = alpm_list_getdata(i); - printf("%s conflicts with %s\n", alpm_conflict_get_package1(conflict), - alpm_conflict_get_package2(conflict)); + printf("%s conflicts with %s\n", + conflict->package1, conflict->package2); ret++; } FREELIST(data); -- cgit v1.2.3 From 7f6c1a76c66fb718fad2ecce68f99ee13d18ff15 Mon Sep 17 00:00:00 2001 From: Dan McGee Date: Thu, 16 Jun 2011 11:42:10 -0500 Subject: Make pmdepend_t and pmdepmissing_t public Signed-off-by: Dan McGee --- src/pacman/remove.c | 6 ++---- src/pacman/sync.c | 6 ++---- src/pacman/upgrade.c | 6 ++---- src/util/pactree.c | 8 ++++---- src/util/testdb.c | 5 ++--- 5 files changed, 12 insertions(+), 19 deletions(-) (limited to 'src') diff --git a/src/pacman/remove.c b/src/pacman/remove.c index a4e18941..2ce33b8a 100644 --- a/src/pacman/remove.c +++ b/src/pacman/remove.c @@ -115,10 +115,8 @@ int pacman_remove(alpm_list_t *targets) case PM_ERR_UNSATISFIED_DEPS: for(i = data; i; i = alpm_list_next(i)) { pmdepmissing_t *miss = alpm_list_getdata(i); - pmdepend_t *dep = alpm_miss_get_dep(miss); - char *depstring = alpm_dep_compute_string(dep); - printf(_(":: %s: requires %s\n"), alpm_miss_get_target(miss), - depstring); + char *depstring = alpm_dep_compute_string(miss->depend); + printf(_(":: %s: requires %s\n"), miss->target, depstring); free(depstring); } break; diff --git a/src/pacman/sync.c b/src/pacman/sync.c index 254117a7..177eab64 100644 --- a/src/pacman/sync.c +++ b/src/pacman/sync.c @@ -785,10 +785,8 @@ static int sync_trans(alpm_list_t *targets) case PM_ERR_UNSATISFIED_DEPS: for(i = data; i; i = alpm_list_next(i)) { pmdepmissing_t *miss = alpm_list_getdata(i); - pmdepend_t *dep = alpm_miss_get_dep(miss); - char *depstring = alpm_dep_compute_string(dep); - printf(_(":: %s: requires %s\n"), alpm_miss_get_target(miss), - depstring); + char *depstring = alpm_dep_compute_string(miss->depend); + printf(_(":: %s: requires %s\n"), miss->target, depstring); free(depstring); } break; diff --git a/src/pacman/upgrade.c b/src/pacman/upgrade.c index 0abcbe4e..6587671b 100644 --- a/src/pacman/upgrade.c +++ b/src/pacman/upgrade.c @@ -107,14 +107,12 @@ int pacman_upgrade(alpm_list_t *targets) case PM_ERR_UNSATISFIED_DEPS: for(i = data; i; i = alpm_list_next(i)) { pmdepmissing_t *miss = alpm_list_getdata(i); - pmdepend_t *dep = alpm_miss_get_dep(miss); - char *depstring = alpm_dep_compute_string(dep); + char *depstring = alpm_dep_compute_string(miss->depend); /* TODO indicate if the error was a virtual package or not: * :: %s: requires %s, provided by %s */ - printf(_(":: %s: requires %s\n"), alpm_miss_get_target(miss), - depstring); + printf(_(":: %s: requires %s\n"), miss->target, depstring); free(depstring); } break; diff --git a/src/util/pactree.c b/src/util/pactree.c index 1dee61bf..6b29d935 100644 --- a/src/util/pactree.c +++ b/src/util/pactree.c @@ -290,7 +290,7 @@ static void walk_deps(pmpkg_t *pkg, int depth) for(i = alpm_pkg_get_depends(pkg); i; i = alpm_list_next(i)) { pmdepend_t *depend = alpm_list_getdata(i); pmpkg_t *provider = alpm_find_satisfier(alpm_db_get_pkgcache(db_local), - alpm_dep_get_name(depend)); + depend->name); if(provider) { const char *provname = alpm_pkg_get_name(provider); @@ -299,15 +299,15 @@ static void walk_deps(pmpkg_t *pkg, int depth) /* if we've already seen this package, don't print in "unique" output * and don't recurse */ if(!unique) { - print(alpm_pkg_get_name(pkg), provname, alpm_dep_get_name(depend), depth); + print(alpm_pkg_get_name(pkg), provname, depend->name, depth); } } else { - print(alpm_pkg_get_name(pkg), provname, alpm_dep_get_name(depend), depth); + print(alpm_pkg_get_name(pkg), provname, depend->name, depth); walk_deps(provider, depth + 1); } } else { /* unresolvable package */ - print(alpm_pkg_get_name(pkg), NULL, alpm_dep_get_name(depend), depth); + print(alpm_pkg_get_name(pkg), NULL, depend->name, depth); } } } diff --git a/src/util/testdb.c b/src/util/testdb.c index aeccdb7c..4937480d 100644 --- a/src/util/testdb.c +++ b/src/util/testdb.c @@ -101,9 +101,8 @@ static int checkdeps(alpm_list_t *pkglist) data = alpm_checkdeps(handle, pkglist, NULL, pkglist, 0); for(i = data; i; i = alpm_list_next(i)) { pmdepmissing_t *miss = alpm_list_getdata(i); - pmdepend_t *dep = alpm_miss_get_dep(miss); - char *depstring = alpm_dep_compute_string(dep); - printf("missing dependency for %s : %s\n", alpm_miss_get_target(miss), + char *depstring = alpm_dep_compute_string(miss->depend); + printf("missing dependency for %s : %s\n", miss->target, depstring); free(depstring); ret++; -- cgit v1.2.3 From 25b7df4dab61e908a0f86e3aad51f1f5c9ed2ccb Mon Sep 17 00:00:00 2001 From: Dan McGee Date: Thu, 16 Jun 2011 11:55:26 -0500 Subject: Make pmgrp_t public Signed-off-by: Dan McGee --- src/pacman/query.c | 15 ++++++--------- src/pacman/remove.c | 2 +- src/pacman/sync.c | 9 ++++----- 3 files changed, 11 insertions(+), 15 deletions(-) (limited to 'src') diff --git a/src/pacman/query.c b/src/pacman/query.c index 06fd704a..aa779075 100644 --- a/src/pacman/query.c +++ b/src/pacman/query.c @@ -304,14 +304,11 @@ static int query_group(alpm_list_t *targets) if(targets == NULL) { for(j = alpm_db_get_grpcache(db_local); j; j = alpm_list_next(j)) { pmgrp_t *grp = alpm_list_getdata(j); - const alpm_list_t *p, *packages; - const char *grpname; + const alpm_list_t *p; - grpname = alpm_grp_get_name(grp); - packages = alpm_grp_get_pkgs(grp); - - for(p = packages; p; p = alpm_list_next(p)) { - printf("%s %s\n", grpname, alpm_pkg_get_name(alpm_list_getdata(p))); + for(p = grp->packages; p; p = alpm_list_next(p)) { + pmpkg_t *pkg = alpm_list_getdata(p); + printf("%s %s\n", grp->name, alpm_pkg_get_name(pkg)); } } } else { @@ -320,8 +317,8 @@ static int query_group(alpm_list_t *targets) grpname = alpm_list_getdata(i); grp = alpm_db_readgrp(db_local, grpname); if(grp) { - const alpm_list_t *p, *packages = alpm_grp_get_pkgs(grp); - for(p = packages; p; p = alpm_list_next(p)) { + const alpm_list_t *p; + for(p = grp->packages; p; p = alpm_list_next(p)) { if(!config->quiet) { printf("%s %s\n", grpname, alpm_pkg_get_name(alpm_list_getdata(p))); diff --git a/src/pacman/remove.c b/src/pacman/remove.c index 2ce33b8a..60027ae2 100644 --- a/src/pacman/remove.c +++ b/src/pacman/remove.c @@ -52,7 +52,7 @@ static int remove_target(const char *target) pm_fprintf(stderr, PM_LOG_ERROR, "'%s': target not found\n", target); return -1; } - for(p = alpm_grp_get_pkgs(grp); p; p = alpm_list_next(p)) { + for(p = grp->packages; p; p = alpm_list_next(p)) { pmpkg_t *pkg = alpm_list_getdata(p); if(alpm_remove_pkg(config->handle, pkg) == -1) { pm_fprintf(stderr, PM_LOG_ERROR, "'%s': %s\n", target, diff --git a/src/pacman/sync.c b/src/pacman/sync.c index 177eab64..acb8a333 100644 --- a/src/pacman/sync.c +++ b/src/pacman/sync.c @@ -409,7 +409,7 @@ static int sync_group(int level, alpm_list_t *syncs, alpm_list_t *targets) if(grp) { /* get names of packages in group */ - for(k = alpm_grp_get_pkgs(grp); k; k = alpm_list_next(k)) { + for(k = grp->packages; k; k = alpm_list_next(k)) { if(!config->quiet) { printf("%s %s\n", grpname, alpm_pkg_get_name(alpm_list_getdata(k))); @@ -426,16 +426,15 @@ static int sync_group(int level, alpm_list_t *syncs, alpm_list_t *targets) for(j = alpm_db_get_grpcache(db); j; j = alpm_list_next(j)) { pmgrp_t *grp = alpm_list_getdata(j); - const char *grpname = alpm_grp_get_name(grp); if(level > 1) { - for(k = alpm_grp_get_pkgs(grp); k; k = alpm_list_next(k)) { - printf("%s %s\n", grpname, + for(k = grp->packages; k; k = alpm_list_next(k)) { + printf("%s %s\n", grp->name, alpm_pkg_get_name(alpm_list_getdata(k))); } } else { /* print grp names only, no package names */ - printf("%s\n", grpname); + printf("%s\n", grp->name); } } } -- cgit v1.2.3