Zebediah Figura : include: Add list_move_after() and list_move_before().

Alexandre Julliard julliard at winehq.org
Wed Aug 10 14:45:26 CDT 2022


Module: vkd3d
Branch: master
Commit: a2996c2d59b140a0a92efc85d43c8f9b59540a12
URL:    https://gitlab.winehq.org/wine/vkd3d/-/commit/a2996c2d59b140a0a92efc85d43c8f9b59540a12

Author: Zebediah Figura <zfigura at codeweavers.com>
Date:   Sat Sep 11 16:08:59 2021 -0500

include: Add list_move_after() and list_move_before().

Signed-off-by: Francisco Casas <fcasas at codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura at codeweavers.com>
Signed-off-by: Giovanni Mascellani <gmascellani at codeweavers.com>

---

 include/private/list.h | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/include/private/list.h b/include/private/list.h
index b4d681fe..5e92cfb2 100644
--- a/include/private/list.h
+++ b/include/private/list.h
@@ -150,8 +150,8 @@ static inline unsigned int list_count( const struct list *list )
     return count;
 }
 
-/* move all elements from src to the tail of dst */
-static inline void list_move_tail( struct list *dst, struct list *src )
+/* move all elements from src to before the specified element */
+static inline void list_move_before( struct list *dst, struct list *src )
 {
     if (list_empty(src)) return;
 
@@ -162,8 +162,8 @@ static inline void list_move_tail( struct list *dst, struct list *src )
     list_init(src);
 }
 
-/* move all elements from src to the head of dst */
-static inline void list_move_head( struct list *dst, struct list *src )
+/* move all elements from src to after the specified element */
+static inline void list_move_after( struct list *dst, struct list *src )
 {
     if (list_empty(src)) return;
 
@@ -174,6 +174,18 @@ static inline void list_move_head( struct list *dst, struct list *src )
     list_init(src);
 }
 
+/* move all elements from src to the head of dst */
+static inline void list_move_head( struct list *dst, struct list *src )
+{
+    list_move_after( dst, src );
+}
+
+/* move all elements from src to the tail of dst */
+static inline void list_move_tail( struct list *dst, struct list *src )
+{
+    list_move_before( dst, src );
+}
+
 /* iterate through the list */
 #define LIST_FOR_EACH(cursor,list) \
     for ((cursor) = (list)->next; (cursor) != (list); (cursor) = (cursor)->next)




More information about the wine-cvs mailing list