SimpleKeyedRef

Trait SimpleKeyedRef 

Source
pub trait SimpleKeyedRef: KeyedRef {
    // Required method
    fn into_ref<'r>(r: Self::KeyRef<'r>) -> &'r Self::Key
       where Self: 'r;
}
Expand description

Keyed collection where each key 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::KeyRef<'r>: Into<&'r T::Key>, 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_ref<'r>(r: Self::KeyRef<'r>) -> &'r Self::Key
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> SimpleKeyedRef for BTreeMap<K, V>

Source§

fn into_ref<'r>(r: Self::KeyRef<'r>) -> &'r Self::Key
where Self: 'r,

Source§

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

Source§

fn into_ref<'r>(r: Self::KeyRef<'r>) -> &'r Self::Key
where Self: 'r,

Implementors§