[vlc-devel] [PATCH 1/9] vlc_list: add a typedef vlc_list_node to clarify which is the list and which is the node

Steve Lhomme robux4 at ycbcr.xyz
Fri Aug 17 15:04:33 CEST 2018


---
 include/vlc_list.h | 23 +++++++++++++----------
 1 file changed, 13 insertions(+), 10 deletions(-)

diff --git a/include/vlc_list.h b/include/vlc_list.h
index 45263cc789..002119db6b 100644
--- a/include/vlc_list.h
+++ b/include/vlc_list.h
@@ -45,6 +45,9 @@ struct vlc_list
     struct vlc_list *next;
 };
 
+/* type to use in list items to differentiate with the list itself */
+typedef struct vlc_list   vlc_list_node;
+
 /**
  * Static initializer for a list head.
  */
@@ -66,7 +69,7 @@ static inline void vlc_list_init(struct vlc_list *restrict head)
  * \param prev Node pointer of the previous element.
  * \param next Node pointer of the next element.
  */
-static inline void vlc_list_add_between(struct vlc_list *restrict node,
+static inline void vlc_list_add_between(vlc_list_node *restrict node,
                                         struct vlc_list *prev,
                                         struct vlc_list *next)
 {
@@ -82,7 +85,7 @@ static inline void vlc_list_add_between(struct vlc_list *restrict node,
  * \param node Node pointer of the element to insert [OUT].
  * \param prev Node pointer of the previous element.
  */
-static inline void vlc_list_add_after(struct vlc_list *restrict node,
+static inline void vlc_list_add_after(vlc_list_node *restrict node,
                                       struct vlc_list *prev)
 {
     vlc_list_add_between(node, prev, prev->next);
@@ -94,7 +97,7 @@ static inline void vlc_list_add_after(struct vlc_list *restrict node,
  * \param node Node pointer of the element to insert [OUT].
  * \param prev Node pointer of the next element.
  */
-static inline void vlc_list_add_before(struct vlc_list *restrict node,
+static inline void vlc_list_add_before(vlc_list_node *restrict node,
                                        struct vlc_list *next)
 {
     vlc_list_add_between(node, next->prev, next);
@@ -106,7 +109,7 @@ static inline void vlc_list_add_before(struct vlc_list *restrict node,
  * \param node Node pointer of the element to append to the list [OUT].
  * \param head Head pointer of the list to append the element to.
  */
-static inline void vlc_list_append(struct vlc_list *restrict node,
+static inline void vlc_list_append(vlc_list_node *restrict node,
                                    struct vlc_list *head)
 {
     vlc_list_add_before(node, head);
@@ -118,7 +121,7 @@ static inline void vlc_list_append(struct vlc_list *restrict node,
  * \param node Node pointer of the element to prepend to the list [OUT].
  * \param head Head pointer of the list to prepend the element to.
  */
-static inline void vlc_list_prepend(struct vlc_list *restrict node,
+static inline void vlc_list_prepend(vlc_list_node *restrict node,
                                     struct vlc_list *head)
 {
     vlc_list_add_after(node, head);
@@ -131,7 +134,7 @@ static inline void vlc_list_prepend(struct vlc_list *restrict node,
  * \warning The element must be inside a list.
  * Otherwise the behaviour is undefined.
  */
-static inline void vlc_list_remove(struct vlc_list *restrict node)
+static inline void vlc_list_remove(vlc_list_node *restrict node)
 {
     struct vlc_list *prev = node->prev;
     struct vlc_list *next = node->next;
@@ -177,7 +180,7 @@ static inline bool vlc_list_is_empty(const struct vlc_list *head)
  * \retval false The element is not first (or is in another list).
  * \retval true The element is first.
  */
-static inline bool vlc_list_is_first(const struct vlc_list *node,
+static inline bool vlc_list_is_first(const vlc_list_node *node,
                                      const struct vlc_list *head)
 {
     return node->prev == head;
@@ -192,7 +195,7 @@ static inline bool vlc_list_is_first(const struct vlc_list *node,
  * \retval false The element is not last (or is in another list).
  * \retval true The element is last.
  */
-static inline bool vlc_list_is_last(const struct vlc_list *node,
+static inline bool vlc_list_is_last(const vlc_list_node *node,
                                     const struct vlc_list *head)
 {
     return node->next == head;
@@ -289,7 +292,7 @@ static inline void *vlc_list_last_or_null(const struct vlc_list *head,
 }
 
 static inline void *vlc_list_prev_or_null(const struct vlc_list *head,
-                                          struct vlc_list *node,
+                                          vlc_list_node *node,
                                           size_t offset)
 {
     if (vlc_list_is_first(node, head))
@@ -298,7 +301,7 @@ static inline void *vlc_list_prev_or_null(const struct vlc_list *head,
 }
 
 static inline void *vlc_list_next_or_null(const struct vlc_list *head,
-                                          struct vlc_list *node,
+                                          vlc_list_node *node,
                                           size_t offset)
 {
     if (vlc_list_is_last(node, head))
-- 
2.17.0



More information about the vlc-devel mailing list