Class ExpressionTemplate
java.lang.Object
com.google.errorprone.refaster.Template<com.google.errorprone.refaster.ExpressionTemplateMatch>
com.google.errorprone.refaster.ExpressionTemplate
- All Implemented Interfaces:
Unifiable<com.sun.tools.javac.tree.JCTree.JCExpression>
,Serializable
public abstract class ExpressionTemplate
extends Template<com.google.errorprone.refaster.ExpressionTemplateMatch>
implements Unifiable<com.sun.tools.javac.tree.JCTree.JCExpression>
Implementation of a template to match and replace an expression anywhere in an AST.
- Author:
- lowasser@google.com (Louis Wasserman)
- See Also:
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic ExpressionTemplate
create
(com.google.common.collect.ImmutableClassToInstanceMap<Annotation> annotations, Iterable<UTypeVar> typeVariables, Map<String, ? extends UType> expressionArgumentTypes, UExpression expression, UType returnType) static ExpressionTemplate
create
(UExpression expression, UType returnType) static ExpressionTemplate
create
(Map<String, ? extends UType> expressionArgumentTypes, UExpression expression, UType returnType) boolean
Iterable
<com.google.errorprone.refaster.ExpressionTemplateMatch> match
(com.sun.tools.javac.tree.JCTree target, com.sun.tools.javac.util.Context context) Returns the matches of this template against the specified target AST.negation()
replace
(com.google.errorprone.refaster.ExpressionTemplateMatch match) Generates aSuggestedFix
replacing the specified match (usually of another template) with this template.Returns all valid unification paths (if any) from thisUnifier
that unify this withtarget
.Methods inherited from class com.google.errorprone.refaster.Template
actualTypes, addImports, annotations, expectedTypes, expressionArgumentTypes, pretty, templateTypeVariables, typecheck
-
Constructor Details
-
ExpressionTemplate
public ExpressionTemplate()
-
-
Method Details
-
create
-
create
public static ExpressionTemplate create(Map<String, ? extends UType> expressionArgumentTypes, UExpression expression, UType returnType) -
create
public static ExpressionTemplate create(com.google.common.collect.ImmutableClassToInstanceMap<Annotation> annotations, Iterable<UTypeVar> typeVariables, Map<String, ? extends UType> expressionArgumentTypes, UExpression expression, UType returnType) -
generateNegation
public boolean generateNegation() -
negation
-
match
public Iterable<com.google.errorprone.refaster.ExpressionTemplateMatch> match(com.sun.tools.javac.tree.JCTree target, com.sun.tools.javac.util.Context context) Returns the matches of this template against the specified target AST. -
unify
Description copied from interface:Unifiable
Returns all valid unification paths (if any) from thisUnifier
that unify this withtarget
. -
replace
Generates aSuggestedFix
replacing the specified match (usually of another template) with this template.
-