Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=pacman-g2.git;a=commitdiff;h=b20aab013fd522d6ef727a2d08218d7f6caaad84

commit b20aab013fd522d6ef727a2d08218d7f6caaad84
Author: Michel Hermier <[email protected]>
Date:   Mon Oct 6 11:17:03 2014 +0200

pacman-g2: Move list.c to list.cpp (to ease coding).

diff --git a/lib/libpacman/CMakeLists.txt b/lib/libpacman/CMakeLists.txt
index 9e1887e..6433523 100644
--- a/lib/libpacman/CMakeLists.txt
+++ b/lib/libpacman/CMakeLists.txt
@@ -22,7 +22,7 @@ set(FLIB_SOURCES
io/ftp.c
util/fabstractlogger.cpp
util/fabstractlogger.h
-       util/falgorithms.h
+       util/falgorithm.h
util/fdispatchlogger.cpp
util/fdispatchlogger.h
util/flist.h
diff --git a/src/pacman-g2/CMakeLists.txt b/src/pacman-g2/CMakeLists.txt
index 1a3d33e..734a577 100644
--- a/src/pacman-g2/CMakeLists.txt
+++ b/src/pacman-g2/CMakeLists.txt
@@ -2,7 +2,7 @@ set(PACMAN_SOURCES
conf.c
deptest.c
download.c
-       list.c
+       list.cpp
log.c
package.c
pacman-g2.c
diff --git a/src/pacman-g2/list.c b/src/pacman-g2/list.cpp
similarity index 86%
rename from src/pacman-g2/list.c
rename to src/pacman-g2/list.cpp
index 50a6692..1c7909b 100644
--- a/src/pacman-g2/list.c
+++ b/src/pacman-g2/list.cpp
@@ -24,6 +24,7 @@
#include <string.h>
#include <stdio.h>
#include <libintl.h>
+
/* pacman-g2 */
#include "util.h"
#include "list.h"
@@ -34,15 +35,15 @@ extern int maxcols;
*/
void list_display(const char *title, const FStringList *list)
{
-       const FStringListIterator *lp, *end;
+       FStringList::const_iterator lp, end;
int cols, len;

len = strlen(title);
printf("%s ", title);

if(list) {
-               for(lp = f_ptrlist_first_const(list), end = 
f_ptrlist_end_const(list), cols = len; lp != end; lp = f_ptrlistitem_next(lp)) {
-                       int s = strlen((char *)list_data(lp))+1;
+               for(lp = list->begin(), end = list->end(), cols = len; lp != 
end; ++lp) {
+                       int s = strlen(*lp)+1;
if(s+cols >= maxcols) {
int i;
cols = len;
@@ -51,7 +52,7 @@ void list_display(const char *title, const FStringList *list)
printf(" ");
}
}
-                       printf("%s ", (char *)list_data(lp));
+                       printf("%s ", *lp);
cols += s;
}
printf("\n");
@@ -68,9 +69,9 @@ void list_display(const char *title, const FStringList *list)
* This function takes a PM_LIST* and returns a list_t*
*
*/
-list_t *PM_LIST_remove_dupes(PM_LIST *list)
+FStringList *PM_LIST_remove_dupes(PM_LIST *list)
{
-       list_t *newlist = NULL;
+       FStringList *newlist = NULL;

for(pmlist_iterator_t *i = pacman_list_begin(list), *end = 
pacman_list_end(list); i != end; i = pacman_list_next(i)) {
char *data = pacman_list_getdata(i);
diff --git a/src/pacman-g2/list.h b/src/pacman-g2/list.h
index 279bfb9..53525e9 100644
--- a/src/pacman-g2/list.h
+++ b/src/pacman-g2/list.h
@@ -26,13 +26,21 @@
#include <util/fptrlist.h>
#include <util/fstringlist.h>

+#ifdef __cplusplus
+extern "C" {
+#endif
+
typedef FPtrList list_t;

#define list_data f_ptrlistitem_data
void list_display(const char *title, const FStringList *list);

#define PM_LIST_display(title, list) list_display(title, (const FStringList 
*)list)
-list_t *PM_LIST_remove_dupes(PM_LIST *list);
+FStringList *PM_LIST_remove_dupes(PM_LIST *list);
+
+#ifdef __cplusplus
+}
+#endif

#endif /* _PM_LIST_H */
_______________________________________________
Frugalware-git mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to