list: Add list_pop_back
This commit is contained in:
parent
b751481e5c
commit
5b4d00d6cf
2 changed files with 10 additions and 0 deletions
|
@ -74,3 +74,12 @@ void *list_pop_front(struct list *list) {
|
||||||
list_del(list, 0);
|
list_del(list, 0);
|
||||||
return item;
|
return item;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void *list_pop_back(struct list *list) {
|
||||||
|
if (list->length == 0) {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
void *item = list->items[list->length - 1];
|
||||||
|
list->length -= 1;
|
||||||
|
return item;
|
||||||
|
}
|
||||||
|
|
|
@ -17,6 +17,7 @@ void list_del(struct list *list, size_t index);
|
||||||
void list_concat(struct list *list, struct list *source);
|
void list_concat(struct list *list, struct list *source);
|
||||||
void list_truncate(struct list *list);
|
void list_truncate(struct list *list);
|
||||||
void *list_pop_front(struct list *list);
|
void *list_pop_front(struct list *list);
|
||||||
|
void *list_pop_back(struct list *list);
|
||||||
size_t list_find(struct list *list, const void *item);
|
size_t list_find(struct list *list, const void *item);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue