pub trait InnerTransform: Sized {
    // Required method
    fn inner_transform_with(
        &self,
        transformer: &mut impl Transformer
    ) -> Transformed<Self>;
}
Expand description

Trait implemented on “transformable” types, to further “elaborate” a type by transforming its “interior” (i.e. variants and/or fields).

That is, an impl InnerTransform for X will call the relevant Transformer method for each X field, effectively performing a single level of a deep transform. Also, if Transformer::transform_X exists for a given X, its default should be to call X::inner_transform_with (i.e. so that transforming is mostly-deep by default).

Required Methods§

source

fn inner_transform_with( &self, transformer: &mut impl Transformer ) -> Transformed<Self>

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl<T: InnerTransform> InnerTransform for Rc<T>

source§

fn inner_transform_with( &self, transformer: &mut impl Transformer ) -> Transformed<Self>

Implementors§