Class CanBeStaticAnalyzer
java.lang.Object
com.google.errorprone.bugpatterns.CanBeStaticAnalyzer
Analyzes trees for references to their enclosing instance.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
Stores the result of a can-be-static query. -
Method Summary
Modifier and TypeMethodDescriptioncanBeStaticResult
(Tree tree, com.sun.tools.javac.code.Symbol owner, VisitorState state) static boolean
referencesOuter
(Tree tree, com.sun.tools.javac.code.Symbol owner, VisitorState state) Returns true if the tree references its enclosing class.void
scan
(com.sun.tools.javac.tree.JCTree arg0) void
scan
(com.sun.tools.javac.util.List<? extends com.sun.tools.javac.tree.JCTree> arg0) void
visitAnnotatedType
(com.sun.tools.javac.tree.JCTree.JCAnnotatedType arg0) void
visitAnnotation
(com.sun.tools.javac.tree.JCTree.JCAnnotation tree) void
visitAnyPattern
(com.sun.tools.javac.tree.JCTree.JCAnyPattern arg0) void
visitApply
(com.sun.tools.javac.tree.JCTree.JCMethodInvocation arg0) void
visitAssert
(com.sun.tools.javac.tree.JCTree.JCAssert arg0) void
visitAssign
(com.sun.tools.javac.tree.JCTree.JCAssign arg0) void
visitAssignop
(com.sun.tools.javac.tree.JCTree.JCAssignOp arg0) void
visitBinary
(com.sun.tools.javac.tree.JCTree.JCBinary arg0) void
visitBindingPattern
(com.sun.tools.javac.tree.JCTree.JCBindingPattern arg0) void
visitBlock
(com.sun.tools.javac.tree.JCTree.JCBlock arg0) void
visitBreak
(com.sun.tools.javac.tree.JCTree.JCBreak arg0) void
visitCase
(com.sun.tools.javac.tree.JCTree.JCCase arg0) void
visitCatch
(com.sun.tools.javac.tree.JCTree.JCCatch arg0) void
visitClassDef
(com.sun.tools.javac.tree.JCTree.JCClassDecl arg0) void
visitConditional
(com.sun.tools.javac.tree.JCTree.JCConditional arg0) void
visitConstantCaseLabel
(com.sun.tools.javac.tree.JCTree.JCConstantCaseLabel arg0) void
visitContinue
(com.sun.tools.javac.tree.JCTree.JCContinue arg0) void
visitDefaultCaseLabel
(com.sun.tools.javac.tree.JCTree.JCDefaultCaseLabel arg0) void
visitDoLoop
(com.sun.tools.javac.tree.JCTree.JCDoWhileLoop arg0) void
visitErroneous
(com.sun.tools.javac.tree.JCTree.JCErroneous arg0) void
visitExec
(com.sun.tools.javac.tree.JCTree.JCExpressionStatement arg0) void
visitExports
(com.sun.tools.javac.tree.JCTree.JCExports arg0) void
visitForeachLoop
(com.sun.tools.javac.tree.JCTree.JCEnhancedForLoop arg0) void
visitForLoop
(com.sun.tools.javac.tree.JCTree.JCForLoop arg0) void
visitIdent
(com.sun.tools.javac.tree.JCTree.JCIdent tree) void
visitIf
(com.sun.tools.javac.tree.JCTree.JCIf arg0) void
visitImport
(com.sun.tools.javac.tree.JCTree.JCImport arg0) void
visitIndexed
(com.sun.tools.javac.tree.JCTree.JCArrayAccess arg0) void
visitLabelled
(com.sun.tools.javac.tree.JCTree.JCLabeledStatement arg0) void
visitLambda
(com.sun.tools.javac.tree.JCTree.JCLambda arg0) void
visitLetExpr
(com.sun.tools.javac.tree.JCTree.LetExpr arg0) void
visitLiteral
(com.sun.tools.javac.tree.JCTree.JCLiteral arg0) void
visitMethodDef
(com.sun.tools.javac.tree.JCTree.JCMethodDecl arg0) void
visitModifiers
(com.sun.tools.javac.tree.JCTree.JCModifiers arg0) void
visitModuleDef
(com.sun.tools.javac.tree.JCTree.JCModuleDecl arg0) void
visitModuleImport
(com.sun.tools.javac.tree.JCTree.JCModuleImport arg0) void
visitNewArray
(com.sun.tools.javac.tree.JCTree.JCNewArray arg0) void
visitNewClass
(com.sun.tools.javac.tree.JCTree.JCNewClass tree) void
visitOpens
(com.sun.tools.javac.tree.JCTree.JCOpens arg0) void
visitPackageDef
(com.sun.tools.javac.tree.JCTree.JCPackageDecl arg0) void
visitParens
(com.sun.tools.javac.tree.JCTree.JCParens arg0) void
visitPatternCaseLabel
(com.sun.tools.javac.tree.JCTree.JCPatternCaseLabel arg0) void
visitProvides
(com.sun.tools.javac.tree.JCTree.JCProvides arg0) void
visitRecordPattern
(com.sun.tools.javac.tree.JCTree.JCRecordPattern arg0) void
visitReference
(com.sun.tools.javac.tree.JCTree.JCMemberReference tree) void
visitRequires
(com.sun.tools.javac.tree.JCTree.JCRequires arg0) void
visitReturn
(com.sun.tools.javac.tree.JCTree.JCReturn arg0) void
visitSelect
(com.sun.tools.javac.tree.JCTree.JCFieldAccess tree) void
visitSkip
(com.sun.tools.javac.tree.JCTree.JCSkip arg0) void
visitSwitch
(com.sun.tools.javac.tree.JCTree.JCSwitch arg0) void
visitSwitchExpression
(com.sun.tools.javac.tree.JCTree.JCSwitchExpression arg0) void
visitSynchronized
(com.sun.tools.javac.tree.JCTree.JCSynchronized arg0) void
visitThrow
(com.sun.tools.javac.tree.JCTree.JCThrow arg0) void
visitTopLevel
(com.sun.tools.javac.tree.JCTree.JCCompilationUnit arg0) void
visitTree
(com.sun.tools.javac.tree.JCTree arg0) void
visitTry
(com.sun.tools.javac.tree.JCTree.JCTry arg0) void
visitTypeApply
(com.sun.tools.javac.tree.JCTree.JCTypeApply arg0) void
visitTypeArray
(com.sun.tools.javac.tree.JCTree.JCArrayTypeTree arg0) void
visitTypeBoundKind
(com.sun.tools.javac.tree.JCTree.TypeBoundKind arg0) void
visitTypeCast
(com.sun.tools.javac.tree.JCTree.JCTypeCast arg0) void
visitTypeIdent
(com.sun.tools.javac.tree.JCTree.JCPrimitiveTypeTree arg0) void
visitTypeIntersection
(com.sun.tools.javac.tree.JCTree.JCTypeIntersection arg0) void
visitTypeParameter
(com.sun.tools.javac.tree.JCTree.JCTypeParameter arg0) void
visitTypeTest
(com.sun.tools.javac.tree.JCTree.JCInstanceOf arg0) void
visitTypeUnion
(com.sun.tools.javac.tree.JCTree.JCTypeUnion arg0) void
visitUnary
(com.sun.tools.javac.tree.JCTree.JCUnary arg0) void
visitUses
(com.sun.tools.javac.tree.JCTree.JCUses arg0) void
visitVarDef
(com.sun.tools.javac.tree.JCTree.JCVariableDecl arg0) void
visitWhileLoop
(com.sun.tools.javac.tree.JCTree.JCWhileLoop arg0) void
visitWildcard
(com.sun.tools.javac.tree.JCTree.JCWildcard arg0) void
visitYield
(com.sun.tools.javac.tree.JCTree.JCYield arg0)
-
Method Details
-
referencesOuter
public static boolean referencesOuter(Tree tree, com.sun.tools.javac.code.Symbol owner, VisitorState state) Returns true if the tree references its enclosing class. -
canBeStaticResult
public static CanBeStaticAnalyzer.CanBeStaticResult canBeStaticResult(Tree tree, com.sun.tools.javac.code.Symbol owner, VisitorState state) -
visitIdent
public void visitIdent(com.sun.tools.javac.tree.JCTree.JCIdent tree) -
visitSelect
public void visitSelect(com.sun.tools.javac.tree.JCTree.JCFieldAccess tree) -
visitNewClass
public void visitNewClass(com.sun.tools.javac.tree.JCTree.JCNewClass tree) -
visitReference
public void visitReference(com.sun.tools.javac.tree.JCTree.JCMemberReference tree) -
visitAnnotation
public void visitAnnotation(com.sun.tools.javac.tree.JCTree.JCAnnotation tree) -
scan
public void scan(com.sun.tools.javac.tree.JCTree arg0) -
scan
public void scan(com.sun.tools.javac.util.List<? extends com.sun.tools.javac.tree.JCTree> arg0) -
visitTopLevel
public void visitTopLevel(com.sun.tools.javac.tree.JCTree.JCCompilationUnit arg0) -
visitPackageDef
public void visitPackageDef(com.sun.tools.javac.tree.JCTree.JCPackageDecl arg0) -
visitModuleDef
public void visitModuleDef(com.sun.tools.javac.tree.JCTree.JCModuleDecl arg0) -
visitExports
public void visitExports(com.sun.tools.javac.tree.JCTree.JCExports arg0) -
visitModuleImport
public void visitModuleImport(com.sun.tools.javac.tree.JCTree.JCModuleImport arg0) -
visitOpens
public void visitOpens(com.sun.tools.javac.tree.JCTree.JCOpens arg0) -
visitProvides
public void visitProvides(com.sun.tools.javac.tree.JCTree.JCProvides arg0) -
visitRequires
public void visitRequires(com.sun.tools.javac.tree.JCTree.JCRequires arg0) -
visitUses
public void visitUses(com.sun.tools.javac.tree.JCTree.JCUses arg0) -
visitImport
public void visitImport(com.sun.tools.javac.tree.JCTree.JCImport arg0) -
visitClassDef
public void visitClassDef(com.sun.tools.javac.tree.JCTree.JCClassDecl arg0) -
visitMethodDef
public void visitMethodDef(com.sun.tools.javac.tree.JCTree.JCMethodDecl arg0) -
visitVarDef
public void visitVarDef(com.sun.tools.javac.tree.JCTree.JCVariableDecl arg0) -
visitSkip
public void visitSkip(com.sun.tools.javac.tree.JCTree.JCSkip arg0) -
visitBlock
public void visitBlock(com.sun.tools.javac.tree.JCTree.JCBlock arg0) -
visitDoLoop
public void visitDoLoop(com.sun.tools.javac.tree.JCTree.JCDoWhileLoop arg0) -
visitWhileLoop
public void visitWhileLoop(com.sun.tools.javac.tree.JCTree.JCWhileLoop arg0) -
visitForLoop
public void visitForLoop(com.sun.tools.javac.tree.JCTree.JCForLoop arg0) -
visitForeachLoop
public void visitForeachLoop(com.sun.tools.javac.tree.JCTree.JCEnhancedForLoop arg0) -
visitLabelled
public void visitLabelled(com.sun.tools.javac.tree.JCTree.JCLabeledStatement arg0) -
visitSwitch
public void visitSwitch(com.sun.tools.javac.tree.JCTree.JCSwitch arg0) -
visitCase
public void visitCase(com.sun.tools.javac.tree.JCTree.JCCase arg0) -
visitSwitchExpression
public void visitSwitchExpression(com.sun.tools.javac.tree.JCTree.JCSwitchExpression arg0) -
visitSynchronized
public void visitSynchronized(com.sun.tools.javac.tree.JCTree.JCSynchronized arg0) -
visitTry
public void visitTry(com.sun.tools.javac.tree.JCTree.JCTry arg0) -
visitCatch
public void visitCatch(com.sun.tools.javac.tree.JCTree.JCCatch arg0) -
visitConditional
public void visitConditional(com.sun.tools.javac.tree.JCTree.JCConditional arg0) -
visitIf
public void visitIf(com.sun.tools.javac.tree.JCTree.JCIf arg0) -
visitExec
public void visitExec(com.sun.tools.javac.tree.JCTree.JCExpressionStatement arg0) -
visitBreak
public void visitBreak(com.sun.tools.javac.tree.JCTree.JCBreak arg0) -
visitYield
public void visitYield(com.sun.tools.javac.tree.JCTree.JCYield arg0) -
visitContinue
public void visitContinue(com.sun.tools.javac.tree.JCTree.JCContinue arg0) -
visitReturn
public void visitReturn(com.sun.tools.javac.tree.JCTree.JCReturn arg0) -
visitThrow
public void visitThrow(com.sun.tools.javac.tree.JCTree.JCThrow arg0) -
visitAssert
public void visitAssert(com.sun.tools.javac.tree.JCTree.JCAssert arg0) -
visitApply
public void visitApply(com.sun.tools.javac.tree.JCTree.JCMethodInvocation arg0) -
visitNewArray
public void visitNewArray(com.sun.tools.javac.tree.JCTree.JCNewArray arg0) -
visitLambda
public void visitLambda(com.sun.tools.javac.tree.JCTree.JCLambda arg0) -
visitParens
public void visitParens(com.sun.tools.javac.tree.JCTree.JCParens arg0) -
visitAssign
public void visitAssign(com.sun.tools.javac.tree.JCTree.JCAssign arg0) -
visitAssignop
public void visitAssignop(com.sun.tools.javac.tree.JCTree.JCAssignOp arg0) -
visitUnary
public void visitUnary(com.sun.tools.javac.tree.JCTree.JCUnary arg0) -
visitBinary
public void visitBinary(com.sun.tools.javac.tree.JCTree.JCBinary arg0) -
visitTypeCast
public void visitTypeCast(com.sun.tools.javac.tree.JCTree.JCTypeCast arg0) -
visitTypeTest
public void visitTypeTest(com.sun.tools.javac.tree.JCTree.JCInstanceOf arg0) -
visitBindingPattern
public void visitBindingPattern(com.sun.tools.javac.tree.JCTree.JCBindingPattern arg0) -
visitDefaultCaseLabel
public void visitDefaultCaseLabel(com.sun.tools.javac.tree.JCTree.JCDefaultCaseLabel arg0) -
visitConstantCaseLabel
public void visitConstantCaseLabel(com.sun.tools.javac.tree.JCTree.JCConstantCaseLabel arg0) -
visitPatternCaseLabel
public void visitPatternCaseLabel(com.sun.tools.javac.tree.JCTree.JCPatternCaseLabel arg0) -
visitAnyPattern
public void visitAnyPattern(com.sun.tools.javac.tree.JCTree.JCAnyPattern arg0) -
visitRecordPattern
public void visitRecordPattern(com.sun.tools.javac.tree.JCTree.JCRecordPattern arg0) -
visitIndexed
public void visitIndexed(com.sun.tools.javac.tree.JCTree.JCArrayAccess arg0) -
visitLiteral
public void visitLiteral(com.sun.tools.javac.tree.JCTree.JCLiteral arg0) -
visitTypeIdent
public void visitTypeIdent(com.sun.tools.javac.tree.JCTree.JCPrimitiveTypeTree arg0) -
visitTypeArray
public void visitTypeArray(com.sun.tools.javac.tree.JCTree.JCArrayTypeTree arg0) -
visitTypeApply
public void visitTypeApply(com.sun.tools.javac.tree.JCTree.JCTypeApply arg0) -
visitTypeUnion
public void visitTypeUnion(com.sun.tools.javac.tree.JCTree.JCTypeUnion arg0) -
visitTypeIntersection
public void visitTypeIntersection(com.sun.tools.javac.tree.JCTree.JCTypeIntersection arg0) -
visitTypeParameter
public void visitTypeParameter(com.sun.tools.javac.tree.JCTree.JCTypeParameter arg0) -
visitWildcard
public void visitWildcard(com.sun.tools.javac.tree.JCTree.JCWildcard arg0) -
visitTypeBoundKind
public void visitTypeBoundKind(com.sun.tools.javac.tree.JCTree.TypeBoundKind arg0) -
visitModifiers
public void visitModifiers(com.sun.tools.javac.tree.JCTree.JCModifiers arg0) -
visitAnnotatedType
public void visitAnnotatedType(com.sun.tools.javac.tree.JCTree.JCAnnotatedType arg0) -
visitErroneous
public void visitErroneous(com.sun.tools.javac.tree.JCTree.JCErroneous arg0) -
visitLetExpr
public void visitLetExpr(com.sun.tools.javac.tree.JCTree.LetExpr arg0) -
visitTree
public void visitTree(com.sun.tools.javac.tree.JCTree arg0)
-