trait PatternFoldable<'tcx>: Sized {
    // Required method
    fn super_fold_with<F: PatternFolder<'tcx>>(&self, folder: &mut F) -> Self;

    // Provided method
    fn fold_with<F: PatternFolder<'tcx>>(&self, folder: &mut F) -> Self { ... }
}

Required Methods§

source

fn super_fold_with<F: PatternFolder<'tcx>>(&self, folder: &mut F) -> Self

Provided Methods§

source

fn fold_with<F: PatternFolder<'tcx>>(&self, folder: &mut F) -> Self

Implementations on Foreign Types§

source§

impl<'tcx, T: PatternFoldable<'tcx>> PatternFoldable<'tcx> for Vec<T>

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, folder: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for UserType<'tcx>

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, _: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for Ty<'tcx>

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, _: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for &'tcx GenericArg<'tcx>

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, _: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for BindingMode

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, _: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for Mutability

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, _: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for usize

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, _: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for GenericArgsRef<'tcx>

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, _: &mut F) -> Self

source§

impl<'tcx, T: PatternFoldable<'tcx>> PatternFoldable<'tcx> for Option<T>

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, folder: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for Pat<'tcx>

source§

fn fold_with<F: PatternFolder<'tcx>>(&self, folder: &mut F) -> Self

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, folder: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for FieldPat<'tcx>

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, folder: &mut F) -> Self

source§

impl<'tcx, T: PatternFoldable<'tcx>> PatternFoldable<'tcx> for Box<[T]>

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, folder: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for FieldIdx

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, _: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for AdtDef<'tcx>

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, _: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for Region<'tcx>

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, _: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for LocalVarId

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, _: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for PatKind<'tcx>

source§

fn fold_with<F: PatternFolder<'tcx>>(&self, folder: &mut F) -> Self

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, folder: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for Span

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, _: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for Symbol

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, _: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for CanonicalUserTypeAnnotation<'tcx>

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, _: &mut F) -> Self

source§

impl<'tcx, T: PatternFoldable<'tcx>> PatternFoldable<'tcx> for Box<T>

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, folder: &mut F) -> Self

source§

impl<'tcx> PatternFoldable<'tcx> for UserTypeProjection

source§

fn super_fold_with<F: PatternFolder<'tcx>>(&self, _: &mut F) -> Self

Implementors§