DoxigAlpha

len

Iterate over all nodes, returning the count.

This operation is O(N). Consider tracking the length separately rather than computing it.

Function parameters

Parameters

#

This struct contains only the prev and next pointers and not any data

Types

#
Node
This struct contains only the prev and next pointers and not any data

Functions in this namespace

Functions

#
concatByMoving
Concatenate list2 onto the end of list1, removing all entries from the former.
append
Insert a new node at the end of the list.
prepend
Insert a new node at the beginning of the list.
remove
Remove a node from the list.
pop
Remove and return the last node in the list.
popFirst
Remove and return the first node in the list.
len
Iterate over all nodes, returning the count.

Source

Implementation

#
pub fn len(list: DoublyLinkedList) usize {
    var count: usize = 0;
    var it: ?*const Node = list.first;
    while (it) |n| : (it = n.next) count += 1;
    return count;
}