use of edu.umd.cs.findbugs.OpcodeStack in project fb-contrib by mebigfatguy.
the class UseTryWithResources method visitClassContext.
@Override
public void visitClassContext(ClassContext classContext) {
if (autoCloseableClass == null) {
return;
}
try {
int majorVersion = classContext.getJavaClass().getMajor();
if (majorVersion >= Const.MAJOR_1_7) {
stack = new OpcodeStack();
finallyBlocks = new HashMap<>();
regStoredPCs = new HashMap<>();
super.visitClassContext(classContext);
}
} finally {
stack = null;
finallyBlocks = null;
regStoredPCs = null;
}
}
use of edu.umd.cs.findbugs.OpcodeStack in project fb-contrib by mebigfatguy.
the class CollectMethodsReturningImmutableCollections method visitClassContext.
@Override
public void visitClassContext(ClassContext context) {
try {
stack = new OpcodeStack();
clsName = context.getJavaClass().getClassName();
super.visitClassContext(context);
} finally {
stack = null;
}
}
use of edu.umd.cs.findbugs.OpcodeStack in project fb-contrib by mebigfatguy.
the class OverlyPermissiveMethod method visitClassContext.
@Override
public void visitClassContext(ClassContext classContext) {
try {
cls = classContext.getJavaClass();
ClassDescriptor cd = classContext.getClassDescriptor();
callingClass = cd.getClassName();
callingPackage = cd.getPackageName();
stack = new OpcodeStack();
super.visitClassContext(classContext);
} finally {
callingPackage = null;
stack = null;
}
}
use of edu.umd.cs.findbugs.OpcodeStack in project fb-contrib by mebigfatguy.
the class ParallelLists method visitClassContext.
@Override
public void visitClassContext(final ClassContext classContext) {
try {
JavaClass cls = classContext.getJavaClass();
listFields = new HashSet<>();
Field[] flds = cls.getFields();
for (Field f : flds) {
String sig = f.getSignature();
if (sig.startsWith(Values.SIG_QUALIFIED_CLASS_PREFIX)) {
sig = SignatureUtils.trimSignature(sig);
if (sig.startsWith("java/util/") && sig.endsWith("List")) {
listFields.add(f.getName());
}
} else if (sig.startsWith(Values.SIG_ARRAY_PREFIX) && !sig.startsWith(Values.SIG_ARRAY_OF_ARRAYS_PREFIX)) {
listFields.add(f.getName());
}
}
if (!listFields.isEmpty()) {
stack = new OpcodeStack();
indexToFieldMap = new HashMap<>();
super.visitClassContext(classContext);
}
} finally {
stack = null;
indexToFieldMap = null;
}
}
use of edu.umd.cs.findbugs.OpcodeStack in project fb-contrib by mebigfatguy.
the class PartiallyConstructedObjectAccess method visitClassContext.
/**
* implements the visitor to set up the stack and methodToCalledmethods map reports calls to public non final methods from methods called from constructors.
*
* @param classContext
* the context object of the currently parsed class
*/
@Override
public void visitClassContext(final ClassContext classContext) {
try {
JavaClass cls = classContext.getJavaClass();
if (!cls.isFinal()) {
stack = new OpcodeStack();
methodToCalledMethods = new HashMap<>();
super.visitClassContext(classContext);
if (!methodToCalledMethods.isEmpty()) {
reportChainedMethods();
}
}
} finally {
stack = null;
methodToCalledMethods = null;
}
}
Aggregations