SimpleCollectionMut

Trait SimpleCollectionMut 

Source
pub trait SimpleCollectionMut: CollectionMut {
    // Required method
    fn into_mut<'r>(r: Self::ItemMut<'r>) -> &'r mut Self::Item
       where Self: 'r;
}
Expand description

Collection where each item reference can be converted into a standard “simple” rust reference.

This trait is particularly useful to avoid having to include where bounds of the form for<'r> T::ItemMut<'r>: Into<&'r mut T::Item>, which can currently lead the compiler to try to prove T: 'static (see https://github.com/rust-lang/rust/pull/96709#issuecomment-1182403490) for more details.

Required Methods§

Source

fn into_mut<'r>(r: Self::ItemMut<'r>) -> &'r mut Self::Item
where Self: 'r,

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<K, V> SimpleCollectionMut for BTreeMap<K, V>

Source§

fn into_mut<'r>(r: Self::ItemMut<'r>) -> &'r mut Self::Item
where Self: 'r,

Source§

impl<K, V> SimpleCollectionMut for HashMap<K, V>

Source§

fn into_mut<'r>(r: Self::ItemMut<'r>) -> &'r mut Self::Item
where Self: 'r,

Source§

impl<T> SimpleCollectionMut for BTreeSet<T>

Source§

fn into_mut<'r>(r: Self::ItemMut<'r>) -> &'r mut Self::Item
where Self: 'r,

Source§

impl<T> SimpleCollectionMut for VecDeque<T>

Source§

fn into_mut<'r>(r: Self::ItemMut<'r>) -> &'r mut Self::Item
where Self: 'r,

Source§

impl<T> SimpleCollectionMut for Vec<T>

Source§

fn into_mut<'r>(r: Self::ItemMut<'r>) -> &'r mut Self::Item
where Self: 'r,

Source§

impl<T> SimpleCollectionMut for HashSet<T>

Source§

fn into_mut<'r>(r: Self::ItemMut<'r>) -> &'r mut Self::Item
where Self: 'r,

Implementors§