Package com.google.errorprone.refaster
Class UTree<T extends com.sun.tools.javac.tree.JCTree>
-
- Type Parameters:
T
- The type this tree inlines to.
- All Implemented Interfaces:
Unifiable<com.sun.source.tree.Tree>
,com.sun.source.tree.Tree
,com.sun.source.tree.TreeVisitor<Choice<Unifier>,Unifier>
,Serializable
- Direct Known Subclasses:
UExpression
,UReturn
,UVariableDecl
public abstract class UTree<T extends com.sun.tools.javac.tree.JCTree> extends com.sun.source.util.SimpleTreeVisitor<Choice<Unifier>,Unifier> implements Unifiable<com.sun.source.tree.Tree>, com.sun.source.tree.Tree
A serializable representation of a template syntax tree which can be unified with a target AST and inlined based on a set of substitutions.- Author:
- Louis Wasserman ([email protected])
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description UTree()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected Choice<Unifier>
defaultAction(com.sun.source.tree.Tree node, Unifier unifier)
T
inline(Inliner inliner)
Choice<Unifier>
unify(com.sun.source.tree.Tree target, Unifier unifier)
Returns all valid unification paths (if any) from thisUnifier
that unify this withtarget
.-
Methods inherited from class com.sun.source.util.SimpleTreeVisitor
visit, visit, visitAnnotatedType, visitAnnotation, visitArrayAccess, visitArrayType, visitAssert, visitAssignment, visitBinary, visitBlock, visitBreak, visitCase, visitCatch, visitClass, visitCompilationUnit, visitCompoundAssignment, visitConditionalExpression, visitContinue, visitDoWhileLoop, visitEmptyStatement, visitEnhancedForLoop, visitErroneous, visitExports, visitExpressionStatement, visitForLoop, visitIdentifier, visitIf, visitImport, visitInstanceOf, visitIntersectionType, visitLabeledStatement, visitLambdaExpression, visitLiteral, visitMemberReference, visitMemberSelect, visitMethod, visitMethodInvocation, visitModifiers, visitModule, visitNewArray, visitNewClass, visitOpens, visitOther, visitPackage, visitParameterizedType, visitParenthesized, visitPrimitiveType, visitProvides, visitRequires, visitReturn, visitSwitch, visitSynchronized, visitThrow, visitTry, visitTypeCast, visitTypeParameter, visitUnary, visitUnionType, visitUses, visitVariable, visitWhileLoop, visitWildcard
-
-
-
-
Method Detail
-
unify
public Choice<Unifier> unify(@Nullable com.sun.source.tree.Tree target, Unifier unifier)
Description copied from interface:Unifiable
Returns all valid unification paths (if any) from thisUnifier
that unify this withtarget
.
-
defaultAction
protected Choice<Unifier> defaultAction(com.sun.source.tree.Tree node, Unifier unifier)
-
inline
public abstract T inline(Inliner inliner) throws CouldNotResolveImportException
- Throws:
CouldNotResolveImportException
-
-