[go: up one dir, main page]

IntoSuffix

Trait IntoSuffix 

Source
pub trait IntoSuffix {
    type Suffix;

    // Required method
    fn into_suffix(self) -> <Self as IntoSuffix>::Suffix;
}
Expand description

This trait converts any *_Borrow or *_BorrowMut structs generated by the rental macro into their suffix (most dependent) field.

When you own a borrow struct, such as in the body of the closure provided to the rent_all or ref_rent_all methods of a rental struct, you can call into_suffix() to discard the borrow struct and obtain the suffix field if you don’t need any of the other fields.

Required Associated Types§

Source

type Suffix

Type of the transitive suffix of the borrow struct.

If the suffix field of the borrow struct is itself a borrow struct of a subrental, then this type is the suffix of that nested borrow struct, recursively.

Required Methods§

Source

fn into_suffix(self) -> <Self as IntoSuffix>::Suffix

Discard the borrow struct and return the transitive suffix field.

If the suffix field of the borrow struct is itself a borrow struct of a subrental, then this function will return the nested suffix of that borrow struct, recursively.

Implementors§

Source§

impl<'head: 'iref, 'iref> IntoSuffix for SimpleMutDeref_Borrow<'head, 'iref>

Source§

type Suffix = &'iref &'head mut i32

Source§

impl<'head: 'iref, 'iref> IntoSuffix for SimpleMutDeref_BorrowMut<'head, 'iref>

Source§

type Suffix = &'iref mut &'head mut i32

Source§

impl<'head: 'iref, 'iref> IntoSuffix for SimpleMut_Borrow<'head, 'iref>

Source§

type Suffix = &'iref &'head mut i32

Source§

impl<'head: 'iref, 'iref> IntoSuffix for SimpleMut_BorrowMut<'head, 'iref>

Source§

type Suffix = &'iref mut &'head mut i32

Source§

impl<'head: 'iref, 'iref> IntoSuffix for SimpleRefClone_Borrow<'head, 'iref>

Source§

type Suffix = &'iref &'head i32

Source§

impl<'head: 'iref, 'iref> IntoSuffix for SimpleRefClone_BorrowMut<'head, 'iref>

Source§

type Suffix = &'iref mut &'head i32

Source§

impl<'head: 'iref, 'iref> IntoSuffix for SimpleRefCovariant_Borrow<'head, 'iref>

Source§

type Suffix = &'iref &'head i32

Source§

impl<'head: 'iref, 'iref> IntoSuffix for SimpleRefCovariant_BorrowMut<'head, 'iref>

Source§

type Suffix = &'iref mut &'head i32

Source§

impl<'head: 'iref, 'iref> IntoSuffix for SimpleRefDebug_Borrow<'head, 'iref>

Source§

type Suffix = &'iref &'head i32

Source§

impl<'head: 'iref, 'iref> IntoSuffix for SimpleRefDebug_BorrowMut<'head, 'iref>

Source§

type Suffix = &'iref mut &'head i32

Source§

impl<'head: 'iref, 'iref> IntoSuffix for SimpleRefDeref_Borrow<'head, 'iref>

Source§

type Suffix = &'iref &'head i32

Source§

impl<'head: 'iref, 'iref> IntoSuffix for SimpleRefDeref_BorrowMut<'head, 'iref>

Source§

type Suffix = &'iref mut &'head i32

Source§

impl<'head: 'iref, 'iref> IntoSuffix for SimpleRef_Borrow<'head, 'iref>

Source§

type Suffix = &'iref &'head i32

Source§

impl<'head: 'iref, 'iref> IntoSuffix for SimpleRef_BorrowMut<'head, 'iref>

Source§

type Suffix = &'iref mut &'head i32

Source§

impl<'head: 'iref, 'iref, T: 'static> IntoSuffix for SimpleRefMap_Borrow<'head, 'iref, T>

Source§

type Suffix = &'iref &'head T

Source§

impl<'head: 'iref, 'iref, T: 'static> IntoSuffix for SimpleRefMap_BorrowMut<'head, 'iref, T>

Source§

type Suffix = &'iref mut &'head T

Source§

impl<'head: 'suffix, 'suffix, H: 'static + StableDeref + DerefMut, T: 'static> IntoSuffix for RentMut_Borrow<'head, 'suffix, H, T>

Source§

impl<'head: 'suffix, 'suffix, H: 'static + StableDeref + DerefMut, T: 'static> IntoSuffix for RentMut_BorrowMut<'head, 'suffix, H, T>

Source§

type Suffix = &'suffix mut &'head mut T

Source§

impl<'head: 'suffix, 'suffix, H: 'static + StableDeref + DerefMut, T: 'static> IntoSuffix for RentMutex_Borrow<'head, 'suffix, H, T>

Source§

type Suffix = &'suffix MutexGuard<'head, T>

Source§

impl<'head: 'suffix, 'suffix, H: 'static + StableDeref + DerefMut, T: 'static> IntoSuffix for RentMutex_BorrowMut<'head, 'suffix, H, T>

Source§

type Suffix = &'suffix mut MutexGuard<'head, T>

Source§

impl<'head: 'suffix, 'suffix, H: 'static + StableDeref + DerefMut, T: 'static> IntoSuffix for RentRefCellMut_Borrow<'head, 'suffix, H, T>

Source§

type Suffix = &'suffix RefMut<'head, T>

Source§

impl<'head: 'suffix, 'suffix, H: 'static + StableDeref + DerefMut, T: 'static> IntoSuffix for RentRefCellMut_BorrowMut<'head, 'suffix, H, T>

Source§

type Suffix = &'suffix mut RefMut<'head, T>

Source§

impl<'head: 'suffix, 'suffix, H: 'static + StableDeref, T: 'static> IntoSuffix for RentRefCell_Borrow<'head, 'suffix, H, T>

Source§

type Suffix = &'suffix Ref<'head, T>

Source§

impl<'head: 'suffix, 'suffix, H: 'static + StableDeref, T: 'static> IntoSuffix for RentRefCell_BorrowMut<'head, 'suffix, H, T>

Source§

type Suffix = &'suffix mut Ref<'head, T>

Source§

impl<'head: 'suffix, 'suffix, H: 'static + StableDeref, T: 'static> IntoSuffix for RentRef_Borrow<'head, 'suffix, H, T>

Source§

type Suffix = &'suffix &'head T

Source§

impl<'head: 'suffix, 'suffix, H: 'static + StableDeref, T: 'static> IntoSuffix for RentRef_BorrowMut<'head, 'suffix, H, T>

Source§

type Suffix = &'suffix mut &'head T

Source§

impl<'head: 'suffix, 'suffix, H: 'static + StableDeref, T: 'static> IntoSuffix for RentRwLockMut_Borrow<'head, 'suffix, H, T>

Source§

type Suffix = &'suffix RwLockWriteGuard<'head, T>

Source§

impl<'head: 'suffix, 'suffix, H: 'static + StableDeref, T: 'static> IntoSuffix for RentRwLockMut_BorrowMut<'head, 'suffix, H, T>

Source§

type Suffix = &'suffix mut RwLockWriteGuard<'head, T>

Source§

impl<'head: 'suffix, 'suffix, H: 'static + StableDeref, T: 'static> IntoSuffix for RentRwLock_Borrow<'head, 'suffix, H, T>

Source§

type Suffix = &'suffix RwLockReadGuard<'head, T>

Source§

impl<'head: 'suffix, 'suffix, H: 'static + StableDeref, T: 'static> IntoSuffix for RentRwLock_BorrowMut<'head, 'suffix, H, T>

Source§

type Suffix = &'suffix mut RwLockReadGuard<'head, T>