mirror of
https://github.com/rust-embedded/heapless.git
synced 2025-09-30 14:00:29 +00:00
SortedLinkedList::pop: change return type to match std::vec::pop
This commit is contained in:
parent
2e71c18252
commit
1fdf663927
@ -45,6 +45,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
|
|||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- Changed `stable_deref_trait` to a platform-dependent dependency.
|
- Changed `stable_deref_trait` to a platform-dependent dependency.
|
||||||
|
- Changed `SortedLinkedList::pop` return type from `Result<T, ()>` to `Option<T>` to match `std::vec::pop`.
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
|
@ -390,10 +390,10 @@ where
|
|||||||
/// *find += 1000;
|
/// *find += 1000;
|
||||||
/// find.finish();
|
/// find.finish();
|
||||||
///
|
///
|
||||||
/// assert_eq!(ll.pop(), Ok(1002));
|
/// assert_eq!(ll.pop(), Some(1002));
|
||||||
/// assert_eq!(ll.pop(), Ok(3));
|
/// assert_eq!(ll.pop(), Some(3));
|
||||||
/// assert_eq!(ll.pop(), Ok(1));
|
/// assert_eq!(ll.pop(), Some(1));
|
||||||
/// assert_eq!(ll.pop(), Err(()));
|
/// assert_eq!(ll.pop(), None);
|
||||||
/// ```
|
/// ```
|
||||||
pub fn find_mut<F>(&mut self, mut f: F) -> Option<FindMutInner<'_, T, Idx, K, S>>
|
pub fn find_mut<F>(&mut self, mut f: F) -> Option<FindMutInner<'_, T, Idx, K, S>>
|
||||||
where
|
where
|
||||||
@ -491,16 +491,15 @@ where
|
|||||||
/// ll.push(1).unwrap();
|
/// ll.push(1).unwrap();
|
||||||
/// ll.push(2).unwrap();
|
/// ll.push(2).unwrap();
|
||||||
///
|
///
|
||||||
/// assert_eq!(ll.pop(), Ok(2));
|
/// assert_eq!(ll.pop(), Some(2));
|
||||||
/// assert_eq!(ll.pop(), Ok(1));
|
/// assert_eq!(ll.pop(), Some(1));
|
||||||
/// assert_eq!(ll.pop(), Err(()));
|
/// assert_eq!(ll.pop(), None);
|
||||||
/// ```
|
/// ```
|
||||||
#[allow(clippy::result_unit_err)]
|
pub fn pop(&mut self) -> Option<T> {
|
||||||
pub fn pop(&mut self) -> Result<T, ()> {
|
|
||||||
if !self.is_empty() {
|
if !self.is_empty() {
|
||||||
Ok(unsafe { self.pop_unchecked() })
|
Some(unsafe { self.pop_unchecked() })
|
||||||
} else {
|
} else {
|
||||||
Err(())
|
None
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -652,9 +651,9 @@ where
|
|||||||
/// let mut find = ll.find_mut(|v| *v == 2).unwrap();
|
/// let mut find = ll.find_mut(|v| *v == 2).unwrap();
|
||||||
/// find.pop();
|
/// find.pop();
|
||||||
///
|
///
|
||||||
/// assert_eq!(ll.pop(), Ok(3));
|
/// assert_eq!(ll.pop(), Some(3));
|
||||||
/// assert_eq!(ll.pop(), Ok(1));
|
/// assert_eq!(ll.pop(), Some(1));
|
||||||
/// assert_eq!(ll.pop(), Err(()));
|
/// assert_eq!(ll.pop(), None);
|
||||||
/// ```
|
/// ```
|
||||||
#[inline]
|
#[inline]
|
||||||
pub fn pop(mut self) -> T {
|
pub fn pop(mut self) -> T {
|
||||||
@ -685,10 +684,10 @@ where
|
|||||||
/// *find += 1000;
|
/// *find += 1000;
|
||||||
/// find.finish(); // Will resort, we accessed (and updated) the value.
|
/// find.finish(); // Will resort, we accessed (and updated) the value.
|
||||||
///
|
///
|
||||||
/// assert_eq!(ll.pop(), Ok(1002));
|
/// assert_eq!(ll.pop(), Some(1002));
|
||||||
/// assert_eq!(ll.pop(), Ok(3));
|
/// assert_eq!(ll.pop(), Some(3));
|
||||||
/// assert_eq!(ll.pop(), Ok(1));
|
/// assert_eq!(ll.pop(), Some(1));
|
||||||
/// assert_eq!(ll.pop(), Err(()));
|
/// assert_eq!(ll.pop(), None);
|
||||||
/// ```
|
/// ```
|
||||||
#[inline]
|
#[inline]
|
||||||
pub fn finish(self) {
|
pub fn finish(self) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user