Rollup merge of #80972 - KodrAus:deprecate/remove_item, r=nagisa
Remove unstable deprecated Vec::remove_item Closes #40062 The `Vec::remove_item` method was deprecated in `1.46.0` (in August of 2020). This PR now removes that unstable method entirely.
This commit is contained in:
commit
9bfe6f1b2c
@ -1953,27 +1953,6 @@ impl<T: PartialEq, A: Allocator> Vec<T, A> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<T, A: Allocator> Vec<T, A> {
|
|
||||||
/// Removes the first instance of `item` from the vector if the item exists.
|
|
||||||
///
|
|
||||||
/// This method will be removed soon.
|
|
||||||
#[unstable(feature = "vec_remove_item", reason = "recently added", issue = "40062")]
|
|
||||||
#[rustc_deprecated(
|
|
||||||
reason = "Removing the first item equal to a needle is already easily possible \
|
|
||||||
with iterators and the current Vec methods. Furthermore, having a method for \
|
|
||||||
one particular case of removal (linear search, only the first item, no swap remove) \
|
|
||||||
but not for others is inconsistent. This method will be removed soon.",
|
|
||||||
since = "1.46.0"
|
|
||||||
)]
|
|
||||||
pub fn remove_item<V>(&mut self, item: &V) -> Option<T>
|
|
||||||
where
|
|
||||||
T: PartialEq<V>,
|
|
||||||
{
|
|
||||||
let pos = self.iter().position(|x| *x == *item)?;
|
|
||||||
Some(self.remove(pos))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
// Internal methods and functions
|
// Internal methods and functions
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
Loading…
x
Reference in New Issue
Block a user