-
-
Notifications
You must be signed in to change notification settings - Fork 0
Concepts: ranges
Eugene Lazutkin edited this page Mar 10, 2026
·
6 revisions
Ranges in list-toolkit.
Ranges represent a contiguous span of nodes — used for iteration, extraction, and removal.
A range is a plain object with:
-
from: the first node in the range -
to: the last node in the range -
list: the list that owns the range (optional)
Ranges are inclusive. Direction follows the nextName link from from to to.
Omitting from defaults to the list front; omitting to defaults to the list back. Both can be nodes or pointers.
Two types:
-
range(node range) —fromandtoare both nodes. -
ptrRange(pointer range) —fromis aPtr(must have a valid previous node; see pointers),tois a node. Used with SLL only.
If from is missing in a ptrRange, most methods default to frontPtr. Note: ExtSList and ExtValueSList do not provide frontPtr.
Concepts
DLL: doubly linked lists
SLL: singly linked lists
Unrolled list
List utilities
Caches
Heaps
Queue, Stack, and Deque
Trees
Skip list
Timer wheel
Free list