Package edu.umd.cs.findbugs.ba.vna
Class MergeTree
- java.lang.Object
-
- edu.umd.cs.findbugs.ba.vna.MergeTree
-
public class MergeTree extends java.lang.ObjectData structure to keep track of which input ValueNumbers were combined to produce which other output ValueNumbers.
-
-
Field Summary
Fields Modifier and Type Field Description static booleanDEBUGprivate ValueNumberFactoryfactoryprivate java.util.Map<ValueNumber,java.util.BitSet>outputToInputMap
-
Constructor Summary
Constructors Constructor Description MergeTree(ValueNumberFactory factory)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.BitSetgetInputSet(ValueNumber output)Get the set of input ValueNumbers which directly contributed to the given output ValueNumber.private java.util.BitSetgetOutputSet(int valueNumber)java.util.BitSetgetTransitiveInputSet(ValueNumber output)Get the transitive set of input ValueNumbers which contributed (directly or indirectly) to the given output ValueNumber.java.util.BitSetgetTransitiveOutputSet(int input)voidmapInputToOutput(ValueNumber input, ValueNumber output)Map an input ValueNumber to an output ValueNumber.
-
-
-
Field Detail
-
DEBUG
public static final boolean DEBUG
-
factory
private final ValueNumberFactory factory
-
outputToInputMap
private final java.util.Map<ValueNumber,java.util.BitSet> outputToInputMap
-
-
Constructor Detail
-
MergeTree
public MergeTree(ValueNumberFactory factory)
Constructor.- Parameters:
factory- the ValueNumberFactory
-
-
Method Detail
-
mapInputToOutput
public void mapInputToOutput(ValueNumber input, ValueNumber output)
Map an input ValueNumber to an output ValueNumber.- Parameters:
input- the input ValueNumberoutput- the output ValueNumber
-
getInputSet
public java.util.BitSet getInputSet(ValueNumber output)
Get the set of input ValueNumbers which directly contributed to the given output ValueNumber.- Parameters:
output- the output ValueNumber- Returns:
- the set of direct input ValueNumbers
-
getTransitiveInputSet
public java.util.BitSet getTransitiveInputSet(ValueNumber output)
Get the transitive set of input ValueNumbers which contributed (directly or indirectly) to the given output ValueNumber.- Parameters:
output- the output ValueNumber- Returns:
- the transitive set of input ValueNumbers
-
getTransitiveOutputSet
public java.util.BitSet getTransitiveOutputSet(int input)
-
getOutputSet
private java.util.BitSet getOutputSet(int valueNumber)
-
-