pub trait Dequeue {
type Key;
type Value;
type Error;
// Required methods
fn mutate_values<F: FnMut(Self::Value) -> Self::Value>(f: F);
fn pop_back() -> Result<Option<Self::Value>, Self::Error>;
fn pop_front() -> Result<Option<Self::Value>, Self::Error>;
fn push_back(key: Self::Key, value: Self::Value) -> Result<(), Self::Error>;
fn push_front(key: Self::Key, value: Self::Value) -> Result<(), Self::Error>;
fn clear();
}Expand description
Represents dequeue implementation.
Required Associated Types§
Required Methods§
Sourcefn mutate_values<F: FnMut(Self::Value) -> Self::Value>(f: F)
fn mutate_values<F: FnMut(Self::Value) -> Self::Value>(f: F)
Mutates all stored value with given function.
Sourcefn pop_back() -> Result<Option<Self::Value>, Self::Error>
fn pop_back() -> Result<Option<Self::Value>, Self::Error>
Removes and returns tail value of the dequeue, if present.
Sourcefn pop_front() -> Result<Option<Self::Value>, Self::Error>
fn pop_front() -> Result<Option<Self::Value>, Self::Error>
Removes and returns head value of the dequeue, if present.
Sourcefn push_back(key: Self::Key, value: Self::Value) -> Result<(), Self::Error>
fn push_back(key: Self::Key, value: Self::Value) -> Result<(), Self::Error>
Inserts value to the end of dequeue with given key.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".