Trait GetDynDynTable

Source
pub unsafe trait GetDynDynTable<B: ?Sized + DynDynBase> {
    type DynTarget: ?Sized + Unsize<B>;

    // Required method
    fn get_dyn_dyn_table(&self) -> DynDynTable;
}
Expand description

A pointer to an object which has a DynDynTable associated with it.

§Safety

Required Associated Types§

Source

type DynTarget: ?Sized + Unsize<B>

The actual type that this pointer currently points to. This type is used to allow propagation of auto trait bounds such as Send and Sync in the dyn_dyn_cast! macro.

Required Methods§

Source

fn get_dyn_dyn_table(&self) -> DynDynTable

Gets the DynDynTable for the object that this pointer points to.

Implementations on Foreign Types§

Source§

impl<'a, B: ?Sized + DynDynBase, T: ?Sized + Unsize<B>> GetDynDynTable<B> for &'a T

Source§

impl<'a, B: ?Sized + DynDynBase, T: ?Sized + Unsize<B>> GetDynDynTable<B> for &'a mut T

Source§

impl<B: ?Sized + DynDynBase, T: ?Sized + Unsize<B>> GetDynDynTable<B> for Box<T>

Source§

impl<B: ?Sized + DynDynBase, T: ?Sized + Unsize<B>> GetDynDynTable<B> for Rc<T>

Source§

impl<B: ?Sized + DynDynBase, T: ?Sized + Unsize<B>> GetDynDynTable<B> for Arc<T>

Implementors§

Source§

impl<'a, B: ?Sized + DynDynBase, T: DynDyn<'a, B> + StableDeref + DerefMut + 'a> GetDynDynTable<B> for DynDynRefMut<'a, B, T>
where T::Target: Unsize<B>,

Source§

impl<'a, B: ?Sized + DynDynBase, T: GetDynDynTable<B> + StableDeref + 'a> GetDynDynTable<B> for DynDynRef<'a, B, T>
where T::Target: Unsize<B>,

Source§

impl<B: ?Sized + DynDynBase, P: GetDynDynTable<B>> GetDynDynTable<B> for DynDynFat<B, P>