[][src]Trait cast_trait_object::DynCastExtHelper

pub trait DynCastExtHelper<T: ?Sized> {
    type Target;
    type Source;
    type Config;
    fn _dyn_cast(self) -> Result<Self::Target, Self::Source>;
}

Used to implement DynCastExt.

Associated Types

type Target

The wanted trait object that is returned if the cast succeeded.

type Source

The original trait object that is returned if the cast failed.

type Config

The DynCastConfig that is used to preform the conversion.

Loading content...

Required methods

fn _dyn_cast(self) -> Result<Self::Target, Self::Source>

This method is used to cast from one trait object type to another.

Loading content...

Implementations on Foreign Types

impl<'a, T: ?Sized, F: ?Sized> DynCastExtHelper<T> for Box<F> where
    T: 'static,
    F: 'static + DynCast<<F as GetDynCastConfig<T>>::Config> + GetDynCastConfig<T>, 
[src]

type Target = Box<T>

type Source = Box<F>

type Config = <F as GetDynCastConfig<T>>::Config

impl<'a, T: ?Sized, F: ?Sized> DynCastExtHelper<T> for Rc<F> where
    T: 'static,
    F: 'static + DynCast<<F as GetDynCastConfig<T>>::Config> + GetDynCastConfig<T>, 
[src]

type Target = Rc<T>

type Source = Rc<F>

type Config = <F as GetDynCastConfig<T>>::Config

impl<'a, T: ?Sized, F: ?Sized> DynCastExtHelper<T> for Arc<F> where
    T: 'static,
    F: 'static + DynCast<<F as GetDynCastConfig<T>>::Config> + GetDynCastConfig<T>, 
[src]

type Target = Arc<T>

type Source = Arc<F>

type Config = <F as GetDynCastConfig<T>>::Config

Loading content...

Implementors

impl<'a, T: ?Sized, F: ?Sized> DynCastExtHelper<T> for &'a F where
    T: 'static,
    F: 'static + DynCast<<F as GetDynCastConfig<T>>::Config> + GetDynCastConfig<T>, 
[src]

type Target = &'a T

type Source = &'a F

type Config = <F as GetDynCastConfig<T>>::Config

impl<'a, T: ?Sized, F: ?Sized> DynCastExtHelper<T> for &'a mut F where
    T: 'static,
    F: 'static + DynCast<<F as GetDynCastConfig<T>>::Config> + GetDynCastConfig<T>, 
[src]

type Target = &'a mut T

type Source = &'a mut F

type Config = <F as GetDynCastConfig<T>>::Config

Loading content...