pub struct PinList<T: ?Sized + Types> { /* private fields */ }Expand description
An intrusive linked list.
Implementations§
Source§impl<T: ?Sized + Types> PinList<T>
impl<T: ?Sized + Types> PinList<T>
Sourcepub fn cursor_ghost(&self) -> Cursor<'_, T>
pub fn cursor_ghost(&self) -> Cursor<'_, T>
Obtain a Cursor pointing to the “ghost” element of the list.
Sourcepub fn cursor_front(&self) -> Cursor<'_, T>
pub fn cursor_front(&self) -> Cursor<'_, T>
Obtain a Cursor pointing to the first element of the list, or the ghost element if the
list is empty.
Sourcepub fn cursor_back(&self) -> Cursor<'_, T>
pub fn cursor_back(&self) -> Cursor<'_, T>
Obtain a Cursor pointing to the last element of the list, or the ghost element if the
list is empty.
Sourcepub fn cursor_ghost_mut(&mut self) -> CursorMut<'_, T>
pub fn cursor_ghost_mut(&mut self) -> CursorMut<'_, T>
Obtain a CursorMut pointing to the “ghost” element of the list.
Sourcepub fn cursor_front_mut(&mut self) -> CursorMut<'_, T>
pub fn cursor_front_mut(&mut self) -> CursorMut<'_, T>
Obtain a CursorMut pointing to the first element of the list, or the ghost element if the
list is empty.
Sourcepub fn cursor_back_mut(&mut self) -> CursorMut<'_, T>
pub fn cursor_back_mut(&mut self) -> CursorMut<'_, T>
Obtain a CursorMut pointing to the last element of the list, or the ghost element if the
list is empty.
Sourcepub fn push_front<'node>(
&mut self,
node: Pin<&'node mut Node<T>>,
protected: T::Protected,
unprotected: T::Unprotected,
) -> Pin<&'node mut InitializedNode<'node, T>>
pub fn push_front<'node>( &mut self, node: Pin<&'node mut Node<T>>, protected: T::Protected, unprotected: T::Unprotected, ) -> Pin<&'node mut InitializedNode<'node, T>>
Sourcepub fn push_back<'node>(
&mut self,
node: Pin<&'node mut Node<T>>,
protected: T::Protected,
unprotected: T::Unprotected,
) -> Pin<&'node mut InitializedNode<'node, T>>
pub fn push_back<'node>( &mut self, node: Pin<&'node mut Node<T>>, protected: T::Protected, unprotected: T::Unprotected, ) -> Pin<&'node mut InitializedNode<'node, T>>
Trait Implementations§
impl<T: ?Sized + Types> Send for PinList<T>
impl<T: ?Sized + Types> Sync for PinList<T>
Auto Trait Implementations§
impl<T> !RefUnwindSafe for PinList<T>
impl<T> !UnwindSafe for PinList<T>
impl<T> Freeze for PinList<T>
impl<T> Unpin for PinList<T>
impl<T> UnsafeUnpin for PinList<T>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more