Module fold

Source

Structs§

BottomUpFolder
BoundVarReplacer 🔒
Replaces the escaping bound vars (late bound regions or bound types) in a type.
FnMutDelegate
A simple delegate taking 3 mutable functions. The used functions must always return the same result for each bound variable, no matter how frequently they are called.

Traits§

BoundVarReplacerDelegate
A delegate used when instantiating bound vars.
FallibleTypeFolder
This trait is implemented for every folding traversal. There is a fold method defined for every type of interest. Each such method has a default that does an “identity” fold.
TypeFoldable
This trait is implemented for every type that can be folded, providing the skeleton of the traversal.
TypeFolder
This trait is implemented for every infallible folding traversal. There is a fold method defined for every type of interest. Each such method has a default that does an “identity” fold. Implementations of these methods often fall back to a super_fold_with method if the primary argument doesn’t satisfy a particular condition.
TypeSuperFoldable

Functions§

fold_regions
shift_region
shift_vars