Class InstructionActionCache
java.lang.Object
edu.umd.cs.findbugs.ba.obl.InstructionActionCache
A cache for looking up the collection of ObligationPolicyDatabaseActions
associated with a given InstructionHandle. Avoids the need for repeated
(slow) lookups.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Map<org.apache.bcel.generic.InstructionHandle, Collection<ObligationPolicyDatabaseAction>> private final org.apache.bcel.generic.ConstantPoolGenprivate final ObligationPolicyDatabaseprivate static final booleanprivate final TypeDataflow(package private) static final ClassDescriptorprivate final XMethod -
Constructor Summary
ConstructorsConstructorDescriptionInstructionActionCache(ObligationPolicyDatabase database, XMethod xmethod, org.apache.bcel.generic.ConstantPoolGen cpg, TypeDataflow typeDataflow) -
Method Summary
Modifier and TypeMethodDescriptionbooleanaddsObligation(BasicBlock block, org.apache.bcel.generic.InstructionHandle handle, Obligation obligation) booleandeletesObligation(BasicBlock block, org.apache.bcel.generic.InstructionHandle handle, Obligation obligation) getActions(BasicBlock block, org.apache.bcel.generic.InstructionHandle handle) private booleanhasAction(BasicBlock block, org.apache.bcel.generic.InstructionHandle handle, Obligation obligation, ObligationPolicyDatabaseActionType actionType)
-
Field Details
-
DEBUG_LOOKUP
private static final boolean DEBUG_LOOKUP -
database
-
actionCache
private final Map<org.apache.bcel.generic.InstructionHandle, Collection<ObligationPolicyDatabaseAction>> actionCache -
xmethod
-
typeDataflow
-
cpg
private final org.apache.bcel.generic.ConstantPoolGen cpg -
WILL_CLOSE
-
-
Constructor Details
-
InstructionActionCache
public InstructionActionCache(ObligationPolicyDatabase database, XMethod xmethod, org.apache.bcel.generic.ConstantPoolGen cpg, TypeDataflow typeDataflow)
-
-
Method Details
-
getActions
public Collection<ObligationPolicyDatabaseAction> getActions(BasicBlock block, org.apache.bcel.generic.InstructionHandle handle) -
addsObligation
public boolean addsObligation(BasicBlock block, org.apache.bcel.generic.InstructionHandle handle, Obligation obligation) -
deletesObligation
public boolean deletesObligation(BasicBlock block, org.apache.bcel.generic.InstructionHandle handle, Obligation obligation) -
hasAction
private boolean hasAction(BasicBlock block, org.apache.bcel.generic.InstructionHandle handle, Obligation obligation, ObligationPolicyDatabaseActionType actionType)
-