Struct linked_lists_rs::queue::Queue
source · [−]pub struct Queue<T> { /* private fields */ }Expand description
Queue Struct
Implementations
sourceimpl<T> Queue<T>
impl<T> Queue<T>
sourcepub fn peek_mut(&mut self) -> Option<&mut T>
pub fn peek_mut(&mut self) -> Option<&mut T>
Return a mutable reference to the value on the front of the Queue
Returns None if the Queue is empty
Example
let mut queue = Queue::new();
queue.push(5);
assert_eq!(Some(&mut 5), queue.peek_mut());
queue.peek_mut().map(|mut v| *v *= 5);
assert_eq!(Some(25), queue.pop());
assert_eq!(None, queue.peek_mut());sourceimpl<T> Queue<T>
impl<T> Queue<T>
sourceimpl<T> Queue<T>
impl<T> Queue<T>
sourcepub fn iter(&self) -> Iter<'_, T>ⓘNotable traits for Iter<'a, T>impl<'a, T> Iterator for Iter<'a, T> type Item = &'a T;
pub fn iter(&self) -> Iter<'_, T>ⓘNotable traits for Iter<'a, T>impl<'a, T> Iterator for Iter<'a, T> type Item = &'a T;
Reference Iterator to the Queue
Example
let mut queue = Queue::new();
// Insert values into the stack
for x in [1, 2, 3] {
queue.push(x);
}
// Use iter to iterate the stack and verify its values
for (i, x) in std::iter::zip(&queue, [1, 2, 3]) {
assert_eq!(i, &x);
}
// Stack is not consumed
assert_eq!(Some(&1), queue.peek());sourceimpl<T> Queue<T>
impl<T> Queue<T>
sourcepub fn iter_mut(&mut self) -> IterMut<'_, T>ⓘNotable traits for IterMut<'a, T>impl<'a, T> Iterator for IterMut<'a, T> type Item = &'a mut T;
pub fn iter_mut(&mut self) -> IterMut<'_, T>ⓘNotable traits for IterMut<'a, T>impl<'a, T> Iterator for IterMut<'a, T> type Item = &'a mut T;
Mutable Reference Iterator to the Queue
Example
let mut queue = Queue::new();
// Insert values into the stack
for x in [1, 2, 3] {
queue.push(x);
}
// Use iter_mut to iterate the stack and mutate it's values
for i in &mut queue {
*i *= 2;
}
// Assert values mutate as expected
for x in [2, 4, 6] {
assert_eq!(Some(x), queue.pop());
}Trait Implementations
sourceimpl<'a, T> IntoIterator for &'a Queue<T>
impl<'a, T> IntoIterator for &'a Queue<T>
sourceimpl<'a, T> IntoIterator for &'a mut Queue<T>
impl<'a, T> IntoIterator for &'a mut Queue<T>
Auto Trait Implementations
impl<T> RefUnwindSafe for Queue<T> where
T: RefUnwindSafe,
impl<T> !Send for Queue<T>
impl<T> !Sync for Queue<T>
impl<T> Unpin for Queue<T>
impl<T> UnwindSafe for Queue<T> where
T: RefUnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more