pub trait RelativeLinkedList<T: LinkType>: LinkedList<T> {
// Required methods
fn get_first(&self, head: T) -> T;
fn get_last(&self, head: T) -> T;
fn get_size(&self, head: T) -> T;
fn set_first(&mut self, head: T, element: T);
fn set_last(&mut self, head: T, element: T);
fn set_size(&mut self, head: T, size: T);
// Provided methods
fn inc_size(&mut self, head: T) { ... }
fn dec_size(&mut self, head: T) { ... }
}Expand description
Linked list with head-relative access to first, last, and size.
Unlike AbsoluteLinkedList, this trait
stores head/tail/size per head index, allowing multiple independent
lists to share the same underlying node storage.
Required Methods§
Sourcefn set_first(&mut self, head: T, element: T)
fn set_first(&mut self, head: T, element: T)
Sets the first element of the list identified by head.