Trait SinglyPointer

Source
pub trait SinglyPointer<T> {
    // Required method
    fn raw_ptr(&self) -> *mut Node<Singly<T>>;

    // Provided methods
    unsafe fn node(&self) -> &Node<Singly<T>> { ... }
    unsafe fn node_mut(&mut self) -> &mut Node<Singly<T>> { ... }
    unsafe fn next(&self) -> Option<SinglyPtr<T>> { ... }
}
Expand description

A node pointer in a Singly linked list.

Required Methods§

Source

fn raw_ptr(&self) -> *mut Node<Singly<T>>

Returns the raw pointer to the node.

Provided Methods§

Source

unsafe fn node(&self) -> &Node<Singly<T>>

Returns a reference to the node.

§Safety

This method creates a reference directly from the pointer without any checks.

The caller is responsible for the validness of the node pointer.

Alternatively, you may use NodeIdx for safe access.

Source

unsafe fn node_mut(&mut self) -> &mut Node<Singly<T>>

Returns a mutable reference to the node.

§Safety

This method creates a reference directly from the pointer without any checks.

The caller is responsible for the validness of the node pointer.

Alternatively, you may use NodeIdx for safe access.

Source

unsafe fn next(&self) -> Option<SinglyPtr<T>>

Returns the pointer to the next node if exists; None otherwise.

§Safety

This method creates a reference directly from the pointer without any checks.

The caller is responsible for the validness of the node pointer.

Alternatively, you may use NodeIdx for safe access.

Implementors§