Package edu.umd.cs.findbugs.detect
Class ResolveAllReferences
- java.lang.Object
-
- edu.umd.cs.findbugs.visitclass.BetterVisitor
-
- edu.umd.cs.findbugs.visitclass.PreorderVisitor
-
- edu.umd.cs.findbugs.detect.ResolveAllReferences
-
- All Implemented Interfaces:
Detector
,Priorities
,org.apache.bcel.classfile.Visitor
public class ResolveAllReferences extends PreorderVisitor implements Detector
-
-
Field Summary
Fields Modifier and Type Field Description private BugReporter
bugReporter
(package private) java.util.Set<java.lang.String>
defined
-
Fields inherited from interface edu.umd.cs.findbugs.Priorities
EXP_PRIORITY, HIGH_PRIORITY, IGNORE_PRIORITY, LOW_PRIORITY, NORMAL_PRIORITY
-
-
Constructor Summary
Constructors Constructor Description ResolveAllReferences(BugReporter bugReporter)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addAllDefinitions(org.apache.bcel.classfile.JavaClass obj)
private void
compute()
private boolean
find(org.apache.bcel.classfile.JavaClass target, java.lang.String name, java.lang.String signature)
private java.lang.String
getClassName(org.apache.bcel.classfile.JavaClass c, int classIndex)
private java.lang.String
getMemberName(java.lang.String className, java.lang.String memberName, java.lang.String signature)
private java.lang.String
getMemberName(org.apache.bcel.classfile.JavaClass c, java.lang.String className, int memberNameIndex, int signatureIndex)
void
report()
This method is called after all classes to be visited.void
visit(org.apache.bcel.classfile.JavaClass obj)
void
visitClassContext(ClassContext classContext)
Visit the ClassContext for a class which should be analyzed for instances of bug patterns.-
Methods inherited from class edu.umd.cs.findbugs.visitclass.PreorderVisitor
amVisitingMainMethod, asUnsignedByte, doVisitMethod, getClassDescriptor, getClassName, getCode, getConstantPool, getDottedClassName, getDottedFieldSig, getDottedMethodSig, getDottedSuperclassName, getField, getFieldDescriptor, getFieldIsStatic, getFieldName, getFieldSig, getFullyQualifiedFieldName, getFullyQualifiedMethodName, getMethod, getMethodDescriptor, getMethodName, getMethodSig, getMethodVisitOrder, getNumberArguments, getNumberMethodArguments, getPackageName, getSizeOfSurroundingTryBlock, getSizeOfSurroundingTryBlock, getSourceFile, getStringFromIndex, getSuperclassName, getSurroundingCaughtExceptions, getSurroundingCaughtExceptions, getSurroundingCaughtExceptionTypes, getSurroundingTryBlock, getSurroundingTryBlock, getThisClass, getXClass, getXField, getXMethod, hasInterestingClass, hasInterestingMethod, isVisitMethodsInCallOrder, setupVisitorForClass, setVisitMethodsInCallOrder, shouldVisit, toString, visitAfter, visitAfter, visitAnnotation, visitAnnotationDefault, visitAnnotationEntry, visitBootstrapMethods, visitCode, visitConstantInvokeDynamic, visitConstantMethodHandle, visitConstantMethodType, visitConstantModule, visitConstantPackage, visitConstantPool, visitEnclosingMethod, visitingField, visitingMethod, visitInnerClasses, visitJavaClass, visitLineNumberTable, visitLocalVariableTable, visitMethodParameters, visitParameterAnnotation, visitParameterAnnotationEntry, visitStackMap, visitStackMapEntry
-
Methods inherited from class edu.umd.cs.findbugs.visitclass.BetterVisitor
clone, report, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visitCodeException, visitConstantClass, visitConstantDouble, visitConstantFieldref, visitConstantFloat, visitConstantInteger, visitConstantInterfaceMethodref, visitConstantLong, visitConstantMethodref, visitConstantNameAndType, visitConstantString, visitConstantUtf8, visitConstantValue, visitDeprecated, visitExceptionTable, visitField, visitInnerClass, visitLineNumber, visitLocalVariable, visitLocalVariableTypeTable, visitMethod, visitSignature, visitSourceFile, visitSynthetic, visitUnknown
-
-
-
-
Field Detail
-
bugReporter
private final BugReporter bugReporter
-
defined
java.util.Set<java.lang.String> defined
-
-
Constructor Detail
-
ResolveAllReferences
public ResolveAllReferences(BugReporter bugReporter)
-
-
Method Detail
-
compute
private void compute()
-
visitClassContext
public void visitClassContext(ClassContext classContext)
Description copied from interface:Detector
Visit the ClassContext for a class which should be analyzed for instances of bug patterns.- Specified by:
visitClassContext
in interfaceDetector
- Parameters:
classContext
- the ClassContext
-
report
public void report()
Description copied from interface:Detector
This method is called after all classes to be visited. It should be used by any detectors which accumulate information over all visited classes to generate results.
-
addAllDefinitions
public void addAllDefinitions(org.apache.bcel.classfile.JavaClass obj)
-
getClassName
private java.lang.String getClassName(org.apache.bcel.classfile.JavaClass c, int classIndex)
-
getMemberName
private java.lang.String getMemberName(org.apache.bcel.classfile.JavaClass c, java.lang.String className, int memberNameIndex, int signatureIndex)
-
getMemberName
private java.lang.String getMemberName(java.lang.String className, java.lang.String memberName, java.lang.String signature)
-
find
private boolean find(org.apache.bcel.classfile.JavaClass target, java.lang.String name, java.lang.String signature) throws java.lang.ClassNotFoundException
- Throws:
java.lang.ClassNotFoundException
-
visit
public void visit(org.apache.bcel.classfile.JavaClass obj)
- Overrides:
visit
in classBetterVisitor
-
-