wizapp-stdlib/codegen/dbl_list/snippets/list_insert
Abdelrahman Said 3c32b247c0 Upgrade codegen
2025-04-17 09:03:30 +01:00

29 lines
632 B
Plaintext

if (!list || !node || !(node->item)) {{
return;
}}
if (index == 0) {{
wapp_{Tlower}_list_push_front(list, node);
return;
}} else if (index == list->node_count) {{
wapp_{Tlower}_list_push_back(list, node);
return;
}}
{Ttitle}Node *dst_node = wapp_{Tlower}_list_get(list, index);
if (!dst_node) {{
return;
}}
{Ttitle}List node_list = {Tlower}_node_to_list(node);
list->node_count += node_list.node_count;
{Ttitle}Node *prev = dst_node->prev;
dst_node->prev = node_list.last;
prev->next = node_list.first;
node_list.first->prev = prev;
node_list.last->next = dst_node;