Detector
, FirstPassDetector
, NonReportingDetector
, Priorities
public class BuildStringPassthruGraph extends OpcodeStackDetector implements NonReportingDetector
Modifier and Type | Class | Description |
---|---|---|
static class |
BuildStringPassthruGraph.MethodParameter |
|
static class |
BuildStringPassthruGraph.StringPassthruDatabase |
OpcodeStackDetector.WithCustomJumpInfo
codeBytes, lineNumberTable, M_BR, M_CP, M_INT, M_PAD, M_R, M_UINT
stack
EXP_PRIORITY, HIGH_PRIORITY, IGNORE_PRIORITY, LOW_PRIORITY, NORMAL_PRIORITY
Constructor | Description |
---|---|
BuildStringPassthruGraph(BugReporter bugReporter) |
Modifier and Type | Method | Description |
---|---|---|
void |
sawOpcode(int seen) |
By default, this method will not be called when
stack is TOP.
|
boolean |
shouldVisitCode(org.apache.bcel.classfile.Code obj) |
Check see if the Code for this method should be visited.
|
void |
visitAfter(org.apache.bcel.classfile.Code obj) |
Called after visiting a code attribute
|
void |
visitMethod(org.apache.bcel.classfile.Method obj) |
getAnnotationParameterAsString, getAnnotationParameterAsStringArray, visitAnnotation, visitAnnotation, visitParameterAnnotation, visitParameterAnnotation, visitSyntheticParameterAnnotation
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, visitSignature, visitSourceFile, visitSynthetic, visitUnknown
getClassContext, report, visitClassContext
areOppositeBranches, atCatchBlock, getBranchFallThrough, getBranchOffset, getBranchTarget, getClassConstantOperand, getClassDescriptorOperand, getCodeByte, getConstantRefOperand, getDefaultSwitchOffset, getDottedClassConstantOperand, getFieldDescriptorOperand, getIntConstant, getLongConstant, getMaxPC, getMethodDescriptorOperand, getNameConstantOperand, getNextCodeByte, getNextOpcode, getNextPC, getOpcode, getPC, getPrevOpcode, getRefConstantOperand, getRefFieldIsStatic, getRegisterOperand, getSigConstantOperand, getStringConstantOperand, getSwitchLabels, getSwitchOffsets, getXClassOperand, getXFieldOperand, getXMethodOperand, isBranch, isMethodCall, isRegisterLoad, isRegisterStore, isRegisterStore, isReturn, isShift, isSwitch, isWideOpcode, printOpCode, sawBranchTo, sawClass, sawDouble, sawField, sawFloat, sawIMethod, sawInt, sawLong, sawMethod, sawRegister, sawString, visit
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
afterOpcode, beforeOpcode, getStack, isUsingCustomUserValue, visitCode
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, getSurroundingTryBlock, getSurroundingTryBlock, getThisClass, getXClass, getXField, getXMethod, hasInterestingClass, hasInterestingMethod, isVisitMethodsInCallOrder, setupVisitorForClass, setVisitMethodsInCallOrder, shouldVisit, toString, visitAfter, visitAnnotationDefault, visitAnnotationEntry, visitBootstrapMethods, visitConstantInvokeDynamic, visitConstantMethodHandle, visitConstantMethodType, visitConstantModule, visitConstantPackage, visitConstantPool, visitEnclosingMethod, visitingField, visitingMethod, visitInnerClasses, visitJavaClass, visitLineNumberTable, visitLocalVariableTable, visitMethodParameters, visitParameterAnnotationEntry, visitStackMap, visitStackMapEntry
public BuildStringPassthruGraph(BugReporter bugReporter)
public void visitMethod(org.apache.bcel.classfile.Method obj)
visitMethod
in class BetterVisitor
public boolean shouldVisitCode(org.apache.bcel.classfile.Code obj)
BytecodeScanningDetector
shouldVisitCode
in class BytecodeScanningDetector
obj
- Code attributepublic void visitAfter(org.apache.bcel.classfile.Code obj)
PreorderVisitor
visitAfter
in class PreorderVisitor
obj
- Code that was just visitedpublic void sawOpcode(int seen)
OpcodeStackDetector
By default, this method will not be called when
stack is TOP. To change this behavior, override #beforeOpcode(int)
and change to return true even if stack is TOP.
see Using FindBugs for Research to learn lattice and what TOP means.
sawOpcode
in class OpcodeStackDetector
OpcodeStackDetector.beforeOpcode(int)
SpotBugs is licensed under the LGPL.