- Timestamp:
- 2023-03-21T17:31:07Z (2 years ago)
- Branches:
- master, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 3118355
- Parents:
- 7cf5ddb
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/include/adt/list.h
r7cf5ddb r72ac106 315 315 _NO_TRACE static inline void headless_list_split_or_concat(link_t *part1, link_t *part2) 316 316 { 317 if (part1 == NULL || part2 == NULL) 318 return; 319 317 320 part1->prev->next = part2; 318 321 part2->prev->next = part1; … … 354 357 } 355 358 359 /** Swap the contents of two lists. 360 * 361 * @param list1 362 * @param list2 363 */ 364 static inline void list_swap(list_t *list1, list_t *list2) 365 { 366 link_t *first1 = list_first(list1); 367 link_t *first2 = list_first(list2); 368 369 /* Detach both lists from their heads. */ 370 headless_list_split(&list1->head, first1); 371 headless_list_split(&list2->head, first2); 372 373 /* Attach both lists to their new heads. */ 374 headless_list_concat(&list1->head, first2); 375 headless_list_concat(&list2->head, first1); 376 } 377 356 378 /** Concatenate two lists 357 379 *
Note:
See TracChangeset
for help on using the changeset viewer.