- All Superinterfaces:
Function<Term,,Term> UnaryOperator<Term>
- All Known Subinterfaces:
BetaExpander,DeltaExpander,Expander
- All Known Implementing Classes:
EndoTerm.Elevator,EndoTerm.Renamer,EndoTerm.Substituter,Expander.Normalizer,Expander.Tracked,Expander.WHNFer,Zonker
A convenient interface to obtain an endomorphism on `Term`.
This is desirable when you need to transform a `Term` into another `Term`.
One can specify the `pre` and `post` method which represents a recursive step in pre- and post-order respectively.
The overall operation is obtained by recursively transforming the term in pre-order followed by a post-order transformation.
Note that the derived `accept` attempts to preserve object identity when possible,
hence the implementation of `pre` and `post` can take advantage of this behavior.
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final recordA lift but in American English.static final recordNot an IntelliJ Renamer.static final recordPerforms capture-avoiding substitution. -
Method Summary