Function remove [src]

Remove a node from the list. Arguments: node: Pointer to the node to be removed.

Prototype

pub fn remove(list: *DoublyLinkedList, node: *Node) void

Parameters

list: *DoublyLinkedListnode: *Node

Source

pub fn remove(list: *DoublyLinkedList, node: *Node) void { if (node.prev) |prev_node| { // Intermediate node. prev_node.next = node.next; } else { // First element of the list. list.first = node.next; } if (node.next) |next_node| { // Intermediate node. next_node.prev = node.prev; } else { // Last element of the list. list.last = node.prev; } }