Struct FixedVecDeque Copy item path Source pub struct FixedVecDeque<T>{ }
Expand description A double-ended queue implemented with a fixed buffer.
Construct a new fixed ring buffer, pre-allocating all elements through Default
.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut deq = FixedVecDeque::<[u32; 16 ]>::new();
assert_eq! (deq, []);
* deq.push_back() = 1 ;
assert_eq! (deq, [1 ]);
Returns true
if the FixedVecDeque
is empty.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut v = FixedVecDeque::<[u32; 1 ]>::new();
assert! (v.is_empty());
* v.push_front() = 1 ;
assert! (!v.is_empty());
Returns true
if the FixedVecDeque
is full.
Writing to a queue that is full will overwrite existing elements.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut v = FixedVecDeque::<[u32; 1 ]>::new();
assert! (!v.is_full());
* v.push_front() = 1 ;
assert! (v.is_full());
Returns the number of elements in the FixedVecDeque
.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut v = FixedVecDeque::<[u32; 2 ]>::new();
assert_eq! (v.len(), 0 );
* v.push_back() = 1 ;
assert_eq! (v.len(), 1 );
* v.push_back() = 1 ;
assert_eq! (v.len(), 2 );
Returns the number of elements the FixedVecDeque
can hold.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let buf = FixedVecDeque::<[u32; 16 ]>::new();
assert_eq! (buf.capacity(), 16 );
Shortens the FixedVecDeque
, causing excess elements to be unused.
If len
is greater than the FixedVecDeque
’s current length, this has no
effect.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut buf = FixedVecDeque::<[u32; 4 ]>::new();
* buf.push_back() = 5 ;
* buf.push_back() = 10 ;
* buf.push_back() = 15 ;
assert_eq! (buf, [5 , 10 , 15 ]);
buf.truncate(1 );
assert_eq! (buf, [5 ]);
Provides a reference to the front element, or None
if the FixedVecDeque
is
empty.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut d = FixedVecDeque::<[u32; 2 ]>::new();
assert_eq! (d.front(), None );
* d.push_back() = 1 ;
* d.push_back() = 2 ;
assert_eq! (d.front(), Some (& 1 ));
Provides a mutable reference to the front element, or None
if the FixedVecDeque
is
empty.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut d = FixedVecDeque::<[u32; 2 ]>::new();
assert_eq! (d.front_mut(), None );
* d.push_back() = 1 ;
* d.push_back() = 2 ;
match d.front_mut() {
Some (x) => * x = 9 ,
None => (),
}
assert_eq! (d.front(), Some (& 9 ));
assert_eq! (d.back(), Some (& 2 ));
Provides a reference to the back element, or None
if the FixedVecDeque
is
empty.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut d = FixedVecDeque::<[u32; 2 ]>::new();
assert_eq! (d.back(), None );
* d.push_back() = 1 ;
* d.push_back() = 2 ;
assert_eq! (d.back(), Some (& 2 ));
Provides a mutable reference to the back element, or None
if the
FixedVecDeque
is empty.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut d = FixedVecDeque::<[u32; 2 ]>::new();
assert_eq! (d.back(), None );
* d.push_back() = 1 ;
* d.push_back() = 2 ;
match d.back_mut() {
Some (x) => * x = 9 ,
None => (),
}
assert_eq! (d.back(), Some (& 9 ));
Prepends an element to the FixedVecDeque
.
§ Panics
Calling this function will panic if the circular buffer is zero-sized.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut d = FixedVecDeque::<[u32; 3 ]>::new();
assert_eq! (d.front(), None );
assert_eq! (d.back(), None );
* d.push_front() = 1 ;
assert_eq! (d.front(), Some (& 1 ));
assert_eq! (d.back(), Some (& 1 ));
* d.push_front() = 2 ;
assert_eq! (d.front(), Some (& 2 ));
assert_eq! (d.back(), Some (& 1 ));
* d.push_front() = 3 ;
assert_eq! (d.front(), Some (& 3 ));
assert_eq! (d.back(), Some (& 1 ));
* d.push_front() = 4 ;
assert_eq! (d.front(), Some (& 4 ));
assert_eq! (d.back(), Some (& 2 ));
Removes the first element and returns it, or None
if the FixedVecDeque
is
empty.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut d = FixedVecDeque::<[u32; 2 ]>::new();
* d.push_back() = 1 ;
* d.push_back() = 2 ;
assert_eq! (d.pop_front(), Some (&mut 1 ));
assert_eq! (d.pop_front(), Some (&mut 2 ));
assert_eq! (d.pop_front(), None );
Appends an element to the back of the FixedVecDeque
by returning a mutable reference that
can be modified to it.
Note: this might potentially remove elements from the head, unless they have been read.
§ Panics
Calling this function will panic if the circular buffer is zero-sized.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut buf = FixedVecDeque::<[u32; 2 ]>::new();
assert_eq! (buf.back(), None );
assert_eq! (buf.front(), None );
* buf.push_back() = 1 ;
assert_eq! (buf.front(), Some (& 1 ));
assert_eq! (buf.back(), Some (& 1 ));
* buf.push_back() = 2 ;
assert_eq! (buf.front(), Some (& 1 ));
assert_eq! (buf.back(), Some (& 2 ));
* buf.push_back() = 3 ;
assert_eq! (buf.front(), Some (& 2 ));
assert_eq! (buf.back(), Some (& 3 ));
use fixed_vec_deque::FixedVecDeque;
let mut buf = FixedVecDeque::<[u32; 1 ]>::new();
assert_eq! (buf.back(), None );
assert_eq! (buf.front(), None );
* buf.push_back() = 1 ;
assert_eq! (buf.front(), Some (& 1 ));
assert_eq! (buf.back(), Some (& 1 ));
* buf.push_back() = 2 ;
assert_eq! (buf.front(), Some (& 2 ));
assert_eq! (buf.back(), Some (& 2 ));
buf.pop_back();
assert! (buf.is_empty());
assert_eq! (buf.back(), None );
assert_eq! (buf.front(), None );
Removes the last element from the FixedVecDeque
and returns a reference to it, or None
if it is empty.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut buf = FixedVecDeque::<[u32; 2 ]>::new();
assert_eq! (buf.pop_back(), None );
* buf.push_back() = 1 ;
* buf.push_back() = 3 ;
assert_eq! (buf.pop_back(), Some (&mut 3 ));
Removes an element from anywhere in the FixedVecDeque
and returns a mutable reference to
it, replacing it with the last element.
This does not preserve ordering, but is O(1).
Returns None
if index
is out of bounds.
Element at index 0 is the front of the queue.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut buf = FixedVecDeque::<[u32; 4 ]>::new();
assert_eq! (buf.swap_remove_back(0 ), None );
* buf.push_back() = 1 ;
* buf.push_back() = 2 ;
* buf.push_back() = 3 ;
assert_eq! (buf, [1 , 2 , 3 ]);
assert_eq! (buf.swap_remove_back(0 ), Some (&mut 1 ));
assert_eq! (buf, [3 , 2 ]);
Removes an element from anywhere in the FixedVecDeque
and returns a reference to it,
replacing it with the first element.
This does not preserve ordering, but is O(1).
Returns None
if index
is out of bounds.
Element at index 0 is the front of the queue.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut buf = FixedVecDeque::<[u32; 4 ]>::new();
assert_eq! (buf.swap_remove_front(0 ), None );
* buf.push_back() = 1 ;
* buf.push_back() = 2 ;
* buf.push_back() = 3 ;
assert_eq! (buf, [1 , 2 , 3 ]);
assert_eq! (buf.swap_remove_front(2 ), Some (&mut 3 ));
assert_eq! (buf, [2 , 1 ]);
Removes and returns the element at index
from the VecDeque
.
Whichever end is closer to the removal point will be moved to make
room, and all the affected elements will be moved to new positions.
Returns None
if index
is out of bounds.
Element at index 0 is the front of the queue.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut buf = FixedVecDeque::<[u32; 4 ]>::new();
* buf.push_back() = 1 ;
* buf.push_back() = 2 ;
* buf.push_back() = 3 ;
assert_eq! (buf, [1 , 2 , 3 ]);
assert_eq! (buf.remove(1 ), Some (&mut 2 ));
assert_eq! (buf, [1 , 3 ]);
Retains only the elements specified by the predicate.
In other words, remove all elements e
such that f(&e)
returns false.
This method operates in place and preserves the order of the retained
elements.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut buf = FixedVecDeque::<[usize; 8 ]>::new();
buf.extend(1 ..5 );
buf.retain(|& x| x % 2 == 0 );
assert_eq! (buf, [2 , 4 ]);
Returns a front-to-back iterator.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut buf = FixedVecDeque::<[u32; 4 ]>::new();
* buf.push_back() = 5 ;
* buf.push_back() = 3 ;
* buf.push_back() = 4 ;
let b: & [_ ] = & [& 5 , & 3 , & 4 ];
let c: Vec<& u32> = buf.iter().collect();
assert_eq! (& c[..], b);
Returns a front-to-back iterator that returns mutable references.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut buf = FixedVecDeque::<[u32; 4 ]>::new();
* buf.push_back() = 5 ;
* buf.push_back() = 3 ;
* buf.push_back() = 4 ;
for num in buf.iter_mut() {
* num = * num - 2 ;
}
let b: & [_ ] = & [&mut 3 , &mut 1 , &mut 2 ];
assert_eq! (& buf.iter_mut().collect::<Vec<&mut u32>>()[..], b);
Clears the FixedVecDeque
.
The stored values will not be deleted.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut v = FixedVecDeque::<[u32; 1 ]>::new();
* v.push_back() = 1 ;
v.clear();
assert! (v.is_empty());
Returns true
if the FixedVecDeque
contains an element equal to the
given value.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut vector = FixedVecDeque::<[u32; 4 ]>::new();
* vector.push_back() = 0 ;
* vector.push_back() = 1 ;
assert_eq! (vector.contains(& 1 ), true );
assert_eq! (vector.contains(& 10 ), false );
Returns a pair of slices which contain, in order, the contents of the FixedVecDeque
.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut vector = FixedVecDeque::<[u32; 6 ]>::new();
* vector.push_back() = 0 ;
* vector.push_back() = 1 ;
* vector.push_front() = 10 ;
* vector.push_front() = 9 ;
vector.as_mut_slices().0 [0 ] = 42 ;
vector.as_mut_slices().1 [0 ] = 24 ;
assert_eq! (vector.as_slices(), (& [42 , 10 ][..], & [24 , 1 ][..]));
Returns a pair of slices which contain, in order, the contents of the FixedVecDeque
.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut vector = FixedVecDeque::<[u32; 5 ]>::new();
* vector.push_back() = 1 ;
* vector.push_back() = 2 ;
* vector.push_back() = 3 ;
assert_eq! (vector.as_slices(), (& [1 , 2 , 3 ][..], & [][..]));
* vector.push_front() = 4 ;
* vector.push_front() = 5 ;
assert_eq! (vector.as_slices(), (& [5 , 4 ][..], & [1 , 2 , 3 ][..]));
Retrieves an element in the FixedVecDeque
by index.
Element at index 0 is the front of the queue.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut buf = FixedVecDeque::<[u32; 5 ]>::new();
* buf.push_back() = 3 ;
* buf.push_back() = 4 ;
* buf.push_back() = 5 ;
assert_eq! (buf.get(1 ), Some (& 4 ));
Retrieves an element in the FixedVecDeque
mutably by index.
Element at index 0 is the front of the queue.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut buf = FixedVecDeque::<[u32; 5 ]>::new();
* buf.push_back() = 3 ;
* buf.push_back() = 4 ;
* buf.push_back() = 5 ;
if let Some (elem) = buf.get_mut(1 ) {
* elem = 7 ;
}
assert_eq! (buf[1 ], 7 );
Swaps elements at indices i
and j
.
i
and j
may be equal.
Element at index 0 is the front of the queue.
§ Panics
Panics if either index is out of bounds.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut buf = FixedVecDeque::<[u32; 4 ]>::new();
* buf.push_back() = 3 ;
* buf.push_back() = 4 ;
* buf.push_back() = 5 ;
assert_eq! (buf, [3 , 4 , 5 ]);
buf.swap(0 , 2 );
assert_eq! (buf, [5 , 4 , 3 ]);
Modifies the FixedVecDeque
in-place so that len()
is equal to new_len,
either by removing excess elements from the back or by appending clones of value
to the back.
§ Panics
Panics if new_len
is longer than the capacity
of this buffer.
§ Examples
use fixed_vec_deque::FixedVecDeque;
let mut buf = FixedVecDeque::<[u32; 8 ]>::new();
* buf.push_back() = 5 ;
* buf.push_back() = 10 ;
* buf.push_back() = 15 ;
assert_eq! (buf, [5 , 10 , 15 ]);
buf.resize(2 , 0 );
assert_eq! (buf, [5 , 10 ]);
buf.resize(5 , 20 );
assert_eq! (buf, [5 , 10 , 20 , 20 , 20 ]);
Performs copy-assignment from
source
.
Read more Formats the value using the given formatter.
Read more Returns the “default value” for a type.
Read more Extends a collection with the contents of an iterator.
Read more 🔬 This is a nightly-only experimental API. (extend_one
)
Extends a collection with exactly one element.
🔬 This is a nightly-only experimental API. (extend_one
)
Reserves capacity in a collection for the given number of additional elements.
Read more The returned type after indexing.
Performs the indexing (
container[index]
) operation.
Read more Performs the mutable indexing (
container[index]
) operation.
Read more The type of the elements being iterated over.
Which kind of iterator are we turning this into?
Compares and returns the maximum of two values.
Read more Compares and returns the minimum of two values.
Read more Restrict a value to a certain interval.
Read more Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
Tests for self
and other
values to be equal, and is used by ==
.
Tests for !=
. The default implementation is almost always sufficient,
and should not be overridden without very good reason.
This method returns an ordering between
self
and
other
values if one exists.
Read more Tests less than (for
self
and
other
) and is used by the
<
operator.
Read more Tests less than or equal to (for
self
and
other
) and is used by the
<=
operator.
Read more Tests greater than (for
self
and
other
) and is used by the
>
operator.
Read more Tests greater than or equal to (for
self
and
other
) and is used by
the
>=
operator.
Read more Immutably borrows from an owned value.
Read more Mutably borrows from an owned value.
Read more 🔬 This is a nightly-only experimental API. (clone_to_uninit
)
Performs copy-assignment from
self
to
dest
.
Read more Returns the argument unchanged.
Calls U::from(self)
.
That is, this conversion is whatever the implementation of
From <T> for U
chooses to do.
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning.
Read more Uses borrowed data to replace owned data, usually by cloning.
Read more The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.