sys: dlist: Add const qualifier to immutable API functions
Allow passing structs with sys_dlist_t members as const without discarding qualifiers if the API is used without modifying it. Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
This commit is contained in:
parent
dde8067d4a
commit
1a64977b1f
1 changed files with 16 additions and 16 deletions
|
@ -244,7 +244,7 @@ static inline bool sys_dnode_is_linked(const sys_dnode_t *node)
|
|||
* @return true if node is the head, false otherwise
|
||||
*/
|
||||
|
||||
static inline bool sys_dlist_is_head(sys_dlist_t *list, sys_dnode_t *node)
|
||||
static inline bool sys_dlist_is_head(const sys_dlist_t *list, const sys_dnode_t *node)
|
||||
{
|
||||
return list->head == node;
|
||||
}
|
||||
|
@ -258,7 +258,7 @@ static inline bool sys_dlist_is_head(sys_dlist_t *list, sys_dnode_t *node)
|
|||
* @return true if node is the tail, false otherwise
|
||||
*/
|
||||
|
||||
static inline bool sys_dlist_is_tail(sys_dlist_t *list, sys_dnode_t *node)
|
||||
static inline bool sys_dlist_is_tail(const sys_dlist_t *list, const sys_dnode_t *node)
|
||||
{
|
||||
return list->tail == node;
|
||||
}
|
||||
|
@ -271,7 +271,7 @@ static inline bool sys_dlist_is_tail(sys_dlist_t *list, sys_dnode_t *node)
|
|||
* @return true if empty, false otherwise
|
||||
*/
|
||||
|
||||
static inline bool sys_dlist_is_empty(sys_dlist_t *list)
|
||||
static inline bool sys_dlist_is_empty(const sys_dlist_t *list)
|
||||
{
|
||||
return list->head == list;
|
||||
}
|
||||
|
@ -286,7 +286,7 @@ static inline bool sys_dlist_is_empty(sys_dlist_t *list)
|
|||
* @return true if multiple nodes, false otherwise
|
||||
*/
|
||||
|
||||
static inline bool sys_dlist_has_multiple_nodes(sys_dlist_t *list)
|
||||
static inline bool sys_dlist_has_multiple_nodes(const sys_dlist_t *list)
|
||||
{
|
||||
return list->head != list->tail;
|
||||
}
|
||||
|
@ -299,7 +299,7 @@ static inline bool sys_dlist_has_multiple_nodes(sys_dlist_t *list)
|
|||
* @return a pointer to the head element, NULL if list is empty
|
||||
*/
|
||||
|
||||
static inline sys_dnode_t *sys_dlist_peek_head(sys_dlist_t *list)
|
||||
static inline sys_dnode_t *sys_dlist_peek_head(const sys_dlist_t *list)
|
||||
{
|
||||
return sys_dlist_is_empty(list) ? NULL : list->head;
|
||||
}
|
||||
|
@ -314,7 +314,7 @@ static inline sys_dnode_t *sys_dlist_peek_head(sys_dlist_t *list)
|
|||
* @return a pointer to the head element
|
||||
*/
|
||||
|
||||
static inline sys_dnode_t *sys_dlist_peek_head_not_empty(sys_dlist_t *list)
|
||||
static inline sys_dnode_t *sys_dlist_peek_head_not_empty(const sys_dlist_t *list)
|
||||
{
|
||||
return list->head;
|
||||
}
|
||||
|
@ -330,8 +330,8 @@ static inline sys_dnode_t *sys_dlist_peek_head_not_empty(sys_dlist_t *list)
|
|||
* @return a pointer to the next element from a node, NULL if node is the tail
|
||||
*/
|
||||
|
||||
static inline sys_dnode_t *sys_dlist_peek_next_no_check(sys_dlist_t *list,
|
||||
sys_dnode_t *node)
|
||||
static inline sys_dnode_t *sys_dlist_peek_next_no_check(const sys_dlist_t *list,
|
||||
const sys_dnode_t *node)
|
||||
{
|
||||
return (node == list->tail) ? NULL : node->next;
|
||||
}
|
||||
|
@ -346,8 +346,8 @@ static inline sys_dnode_t *sys_dlist_peek_next_no_check(sys_dlist_t *list,
|
|||
* or NULL (when node comes from reading the head of an empty list).
|
||||
*/
|
||||
|
||||
static inline sys_dnode_t *sys_dlist_peek_next(sys_dlist_t *list,
|
||||
sys_dnode_t *node)
|
||||
static inline sys_dnode_t *sys_dlist_peek_next(const sys_dlist_t *list,
|
||||
const sys_dnode_t *node)
|
||||
{
|
||||
return (node != NULL) ? sys_dlist_peek_next_no_check(list, node) : NULL;
|
||||
}
|
||||
|
@ -364,8 +364,8 @@ static inline sys_dnode_t *sys_dlist_peek_next(sys_dlist_t *list,
|
|||
* tail
|
||||
*/
|
||||
|
||||
static inline sys_dnode_t *sys_dlist_peek_prev_no_check(sys_dlist_t *list,
|
||||
sys_dnode_t *node)
|
||||
static inline sys_dnode_t *sys_dlist_peek_prev_no_check(const sys_dlist_t *list,
|
||||
const sys_dnode_t *node)
|
||||
{
|
||||
return (node == list->head) ? NULL : node->prev;
|
||||
}
|
||||
|
@ -381,8 +381,8 @@ static inline sys_dnode_t *sys_dlist_peek_prev_no_check(sys_dlist_t *list,
|
|||
* list).
|
||||
*/
|
||||
|
||||
static inline sys_dnode_t *sys_dlist_peek_prev(sys_dlist_t *list,
|
||||
sys_dnode_t *node)
|
||||
static inline sys_dnode_t *sys_dlist_peek_prev(const sys_dlist_t *list,
|
||||
const sys_dnode_t *node)
|
||||
{
|
||||
return (node != NULL) ? sys_dlist_peek_prev_no_check(list, node) : NULL;
|
||||
}
|
||||
|
@ -395,7 +395,7 @@ static inline sys_dnode_t *sys_dlist_peek_prev(sys_dlist_t *list,
|
|||
* @return a pointer to the tail element, NULL if list is empty
|
||||
*/
|
||||
|
||||
static inline sys_dnode_t *sys_dlist_peek_tail(sys_dlist_t *list)
|
||||
static inline sys_dnode_t *sys_dlist_peek_tail(const sys_dlist_t *list)
|
||||
{
|
||||
return sys_dlist_is_empty(list) ? NULL : list->tail;
|
||||
}
|
||||
|
@ -563,7 +563,7 @@ static inline sys_dnode_t *sys_dlist_get(sys_dlist_t *list)
|
|||
*
|
||||
* @return an integer equal to the size of the list, or 0 if empty
|
||||
*/
|
||||
static inline size_t sys_dlist_len(sys_dlist_t *list)
|
||||
static inline size_t sys_dlist_len(const sys_dlist_t *list)
|
||||
{
|
||||
size_t len = 0;
|
||||
sys_dnode_t *node = NULL;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue