CanDowncast

Trait CanDowncast 

Source
pub trait CanDowncast<Target> {
    type Remainder;

    // Required method
    fn downcast(
        self,
        _tag: PhantomData<Target>,
    ) -> Result<Target, Self::Remainder>;
}

Required Associated Types§

Required Methods§

Source

fn downcast(self, _tag: PhantomData<Target>) -> Result<Target, Self::Remainder>

Implementors§

Source§

impl<Context, Source, Target, Remainder> CanDowncast<Target> for Context
where Context: HasExtractor<Extractor = Source>, Target: HasFields, <Target as HasFields>::Fields: FieldsExtractor<Source, Target, Remainder = Remainder>,

Source§

type Remainder = Remainder