List¶
This module provides a simple singly linked list.
Note
This module is expected to change in the future.
-
record
list¶ A singly linked list.
Note
destroymust be called to reclaim any memory used by the list.-
type
eltType¶ The type of the data stored in every node.
-
var
length: int¶ The number of nodes in the list.
-
proc
size¶ Synonym for length.
-
iter
these()¶ Iterate over the list, yielding each element.
Yield type: eltType
-
proc ref append(e: eltType) Append e to the list.
-
proc
push_back(e: eltType)¶ Synonym for append.
-
proc
append(e: eltType, es: eltType ...?k)¶ Append all of the supplied arguments to the list.
-
proc
prepend(e: eltType)¶ Prepend e to the list.
-
proc
push_front(e: eltType)¶ Synonym for prepend.
-
proc
concat(l: list(eltType))¶ Append all the elements in l to the end of the list.
-
proc ref remove(x: eltType) Remove the first encountered instance of x from the list.
-
proc
pop_front(): eltType¶ Remove the first element from the list and return it. It is an error to call this function on an empty list.
-
proc
destroy()¶ Delete every node in the list.
-
type