Trait intrusive_containers::linked_list::Node [] [src]

pub unsafe trait Node<T, L>: Sized where L: Linkable<Container=Self> {
    fn get_val(&self) -> &T;
    fn get_val_mut(&mut self) -> &mut T;
    fn get_links(&self) -> &L;
    fn get_links_mut(&mut self) -> &mut L;

    fn get_next(&self) -> &Rawlink<L> { ... }
    fn get_next_mut(&mut self) -> &mut Rawlink<L> { ... }
    fn get_prev(&self) -> &Rawlink<L> { ... }
    fn get_prev_mut(&mut self) -> &mut Rawlink<L> { ... }
}

A trait that allows a struct to be inserted into a LinkedList

Rather than implement this directly, it is expected to use the define_list_element macro.

Required Methods

fn get_val(&self) -> &T

Getter for underlying value

fn get_val_mut(&mut self) -> &mut T

Getter for mutable underlying value

Getter for links

Getter for mutable links

Provided Methods

fn get_next(&self) -> &Rawlink<L>

fn get_next_mut(&mut self) -> &mut Rawlink<L>

fn get_prev(&self) -> &Rawlink<L>

fn get_prev_mut(&mut self) -> &mut Rawlink<L>

Implementors