Class Refaster

java.lang.Object
com.google.errorprone.bugpatterns.BugChecker
tech.picnic.errorprone.refaster.runner.Refaster
All Implemented Interfaces:
com.google.errorprone.bugpatterns.BugChecker.CompilationUnitTreeMatcher, com.google.errorprone.matchers.Suppressible, Serializable

@AutoService(com.google.errorprone.bugpatterns.BugChecker.class) public final class Refaster extends com.google.errorprone.bugpatterns.BugChecker implements com.google.errorprone.bugpatterns.BugChecker.CompilationUnitTreeMatcher
A BugChecker that flags code that can be simplified using Refaster rules located on the classpath.

This checker locates all *.refaster classpath resources and assumes that they contain a CodeTransformer. The set of loaded Refaster rules can be restricted by passing -XepOpt:Refaster:NamePattern=<someRegex>.

See Also:
  • Nested Class Summary

    Nested classes/interfaces inherited from class com.google.errorprone.bugpatterns.BugChecker

    com.google.errorprone.bugpatterns.BugChecker.AnnotatedTypeTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.AnnotationTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.ArrayAccessTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.ArrayTypeTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.AssertTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.AssignmentTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.BinaryTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.BindingPatternTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.BlockTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.BreakTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.CaseTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.CatchTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.ClassTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.CompilationUnitTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.CompoundAssignmentTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.ConditionalExpressionTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.ContinueTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.DoWhileLoopTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.EmptyStatementTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.EnhancedForLoopTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.ExportsTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.ExpressionStatementTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.ForLoopTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.IdentifierTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.IfTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.ImportTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.InstanceOfTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.IntersectionTypeTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.LabeledStatementTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.LambdaExpressionTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.LiteralTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.MemberReferenceTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.MemberSelectTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.MethodInvocationTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.MethodTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.ModifiersTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.ModuleTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.NewArrayTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.NewClassTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.OpensTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.PackageTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.ParameterizedTypeTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.ParenthesizedTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.PrimitiveTypeTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.ProvidesTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.RequiresTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.ReturnTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.SuppressibleTreePathScanner<R,P>, com.google.errorprone.bugpatterns.BugChecker.SwitchExpressionTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.SwitchTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.SynchronizedTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.ThrowTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.TryTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.TypeCastTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.TypeParameterTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.UnaryTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.UnionTypeTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.UsesTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.VariableTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.WhileLoopTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.WildcardTreeMatcher, com.google.errorprone.bugpatterns.BugChecker.YieldTreeMatcher
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
    Flag to pass a pattern that restricts which Refaster rules are loaded.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Instantiates a default Refaster instance.
    Refaster(com.google.errorprone.ErrorProneFlags flags)
    Instantiates a customized Refaster.
  • Method Summary

    Modifier and Type
    Method
    Description
    com.google.errorprone.matchers.Description
    matchCompilationUnit(CompilationUnitTree tree, com.google.errorprone.VisitorState state)
     

    Methods inherited from class com.google.errorprone.bugpatterns.BugChecker

    allNames, buildDescription, buildDescription, buildDescription, canonicalName, customSuppressionAnnotations, defaultSeverity, describeMatch, describeMatch, describeMatch, describeMatch, describeMatch, describeMatch, disableable, equals, hashCode, isSuppressed, isSuppressed, isSuppressed, isSuppressed, linkUrl, message, supportsSuppressWarnings, suppressedByAnyOf, suppressedRegions

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface com.google.errorprone.matchers.Suppressible

    allNames, canonicalName, customSuppressionAnnotations, supportsSuppressWarnings, suppressedByAnyOf
  • Field Details

    • INCLUDED_RULES_PATTERN_FLAG

      public static final String INCLUDED_RULES_PATTERN_FLAG
      Flag to pass a pattern that restricts which Refaster rules are loaded.
      See Also:
  • Constructor Details

    • Refaster

      public Refaster()
      Instantiates a default Refaster instance.
    • Refaster

      @Inject public Refaster(com.google.errorprone.ErrorProneFlags flags)
      Instantiates a customized Refaster.
      Parameters:
      flags - Any provided command line flags.
  • Method Details

    • matchCompilationUnit

      @CanIgnoreReturnValue public com.google.errorprone.matchers.Description matchCompilationUnit(CompilationUnitTree tree, com.google.errorprone.VisitorState state)
      Specified by:
      matchCompilationUnit in interface com.google.errorprone.bugpatterns.BugChecker.CompilationUnitTreeMatcher