public static final class IREnumeration.AllDefsEnum extends Object implements Enumeration<Operand>
Enumeration
of Operand
s. It used
for holding the definitions of a particular instruction and being
used as an enumeration for iterating over. It differs from other
enumerations of Operand as it iterates over both implicit
and explicit operands.SSADictionary
Modifier and Type | Field and Description |
---|---|
private int |
curHeapOperand
Current heap operand we're upto for the enumeration
|
private HeapOperand<?>[] |
heapOperands
Array of heap operands defined by the instruction
|
private Enumeration<Register> |
implicitDefs
Implicit definitions from the operator
|
private Instruction |
instr
Defining instruction
|
private Enumeration<Operand> |
instructionOperands
Enumeration of non-heap operands defined by the instruction
|
Constructor and Description |
---|
AllDefsEnum(IR ir,
Instruction instr)
Construct/initialize object
|
Modifier and Type | Method and Description |
---|---|
boolean |
hasMoreElements()
Are there any more elements in the enumeration
|
Operand |
nextElement() |
private final Enumeration<Operand> instructionOperands
private final HeapOperand<?>[] heapOperands
private int curHeapOperand
private final Enumeration<Register> implicitDefs
private final Instruction instr
public AllDefsEnum(IR ir, Instruction instr)
ir
- Containing IRinstr
- Instruction to get definitions forpublic boolean hasMoreElements()
hasMoreElements
in interface Enumeration<Operand>
public Operand nextElement()
nextElement
in interface Enumeration<Operand>