Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=pacman-g2.git;a=commitdiff;h=bca92f8f7c6a095b996a13d984c00cd8503c3732
commit bca92f8f7c6a095b996a13d984c00cd8503c3732 Author: Michel Hermier <[email protected]> Date: Mon Aug 18 16:31:11 2014 +0200 libpacman: Move some f_listitem_methods to f_ptrlistitem. diff --git a/lib/libpacman/util/fptrlist.c b/lib/libpacman/util/fptrlist.c index 6021038..b8fe272 100644 --- a/lib/libpacman/util/fptrlist.c +++ b/lib/libpacman/util/fptrlist.c @@ -139,38 +139,6 @@ int f_listitem_delete(FPtrListItem *self, FVisitor *visitor) return 0; } -int f_listitem_insert_after(FPtrListItem *self, FPtrListItem *previous) -{ - FPtrListItem *next; - - ASSERT(self != NULL, RET_ERR(PM_ERR_WRONG_ARGS, -1)); - ASSERT(previous != NULL, RET_ERR(PM_ERR_WRONG_ARGS, -1)); - - next = previous->next; - previous->next = self; - self->next = next; - self->previous = previous; -#ifndef F_NOCOMPAT - if (next != NULL) -#endif - next->previous = self; - return 0; -} - -FPtrListItem *f_listitem_next(FPtrListItem *self) -{ - ASSERT(self != NULL, RET_ERR(PM_ERR_WRONG_ARGS, NULL)); - - return self->next; -} - -FPtrListItem *f_listitem_previous(FPtrListItem *self) -{ - ASSERT(self != NULL, RET_ERR(PM_ERR_WRONG_ARGS, NULL)); - - return self->previous; -} - FPtrList *f_list_new() { #ifndef F_NOCOMPAT @@ -261,6 +229,38 @@ void *f_ptrlistitem_data(const FPtrListItem *self) return self->data; } +int f_ptrlistitem_insert_after(FPtrListItem *self, FPtrListItem *previous) +{ + FPtrListItem *next; + + ASSERT(self != NULL, RET_ERR(PM_ERR_WRONG_ARGS, -1)); + ASSERT(previous != NULL, RET_ERR(PM_ERR_WRONG_ARGS, -1)); + + next = previous->next; + previous->next = self; + self->next = next; + self->previous = previous; +#ifndef F_NOCOMPAT + if (next != NULL) +#endif + next->previous = self; + return 0; +} + +FPtrListItem *f_ptrlistitem_next(FPtrListItem *self) +{ + ASSERT(self != NULL, RET_ERR(PM_ERR_WRONG_ARGS, NULL)); + + return self->next; +} + +FPtrListItem *f_ptrlistitem_previous(FPtrListItem *self) +{ + ASSERT(self != NULL, RET_ERR(PM_ERR_WRONG_ARGS, NULL)); + + return self->previous; +} + int f_ptrlistitem_ptrcmp(const FPtrListItem *item, const void *ptr) { return f_ptrcmp(item->data, ptr); } diff --git a/lib/libpacman/util/fptrlist.h b/lib/libpacman/util/fptrlist.h index 70a5608..d6f9139 100644 --- a/lib/libpacman/util/fptrlist.h +++ b/lib/libpacman/util/fptrlist.h @@ -73,10 +73,6 @@ typedef void (*FPtrListItemVisitorFunc)(FPtrListItem *item, void *visitor_data); int f_listitem_delete(FPtrListItem *self, FVisitor *visitor); -int f_listitem_insert_after(FPtrListItem *self, FPtrListItem *previous); -FPtrListItem *f_listitem_next(FPtrListItem *self); -FPtrListItem *f_listitem_previous(FPtrListItem *self); - FPtrList *f_list_new(void); int f_list_contains(const FPtrList *list, FPtrListItemComparatorFunc comparator, const void *comparator_data); @@ -93,8 +89,9 @@ FPtrListItem *f_ptrlistitem_new(void *data); int f_ptrlistitem_delete(FPtrListItem *self, FVisitor *visitor); void *f_ptrlistitem_data(const FPtrListItem *self); -#define f_ptrlistitem_next(self) ((FPtrListItem *)f_listitem_next((FPtrListItem *)(self))) -#define f_ptrlistitem_previous(self) ((FPtrListItem *)f_listitem_previous((FPtrListItem *)(self))) +int f_ptrlistitem_insert_after(FPtrListItem *self, FPtrListItem *previous); +FPtrListItem *f_ptrlistitem_next(FPtrListItem *self); +FPtrListItem *f_ptrlistitem_previous(FPtrListItem *self); int f_ptrlistitem_ptrcmp(const FPtrListItem *item, const void *ptr); _______________________________________________ Frugalware-git mailing list [email protected] http://frugalware.org/mailman/listinfo/frugalware-git
