| Line | Branch | Exec | Source | 
|---|---|---|---|
| 1 | /* | ||
| 2 | ** EPITECH PROJECT, 2023 | ||
| 3 | ** my_sort_list | ||
| 4 | ** File description: | ||
| 5 | ** Sorts a linked list | ||
| 6 | */ | ||
| 7 | /** | ||
| 8 | * @file my_sort_list.c | ||
| 9 | * @brief The file containing the my_sort_list function | ||
| 10 | * @author Nicolas TORO | ||
| 11 | */ | ||
| 12 | |||
| 13 | #include "mylist.h" | ||
| 14 | |||
| 15 | 6 | static void check_swap(node_t **list, int (*cmp)()) | |
| 16 | { | ||
| 17 | void *tmp; | ||
| 18 | |||
| 19 | 3/4✓ Branch 0 taken 6 times. ✗ Branch 1 not taken. ✓ Branch 3 taken 1 times. ✓ Branch 4 taken 5 times. | 6 | if ((*list)->prev != NULL && cmp((*list)->prev->data, (*list)->data) > 0) { | 
| 20 | 1 | tmp = (*list)->prev->data; | |
| 21 | 1 | (*list)->prev->data = (*list)->data; | |
| 22 | 1 | (*list)->data = tmp; | |
| 23 | } | ||
| 24 | 6 | } | |
| 25 | |||
| 26 | 1 | void my_sort_list(node_t **begin, int (*cmp)()) | |
| 27 | { | ||
| 28 | 2/2✓ Branch 0 taken 3 times. ✓ Branch 1 taken 1 times. | 4 | for (node_t *list1 = *begin; list1 != NULL; list1 = list1->next) { | 
| 29 | 3 | for (node_t *list2 = (*begin)->next; | |
| 30 | 2/2✓ Branch 0 taken 6 times. ✓ Branch 1 taken 3 times. | 9 | list2 != NULL; list2 = list2->next) { | 
| 31 | 6 | check_swap(&list2, cmp); | |
| 32 | } | ||
| 33 | } | ||
| 34 | 1 | } | |
| 35 |