public final class BranchStructureIterator extends java.lang.Object implements ru.ispras.testbase.knowledge.iterator.Iterator<BranchStructure>
BranchExecutionIterator implements an iterator of valid branch structures for given branch
instructions (conditional and unconditional jumps, procedures calls, etc.).| Modifier and Type | Class and Description |
|---|---|
static class |
BranchStructureIterator.Flags |
| Modifier and Type | Field and Description |
|---|---|
static java.util.EnumSet<BranchStructureIterator.Flags> |
DEFAULT_FLAGS
Heuristics flags used by default.
|
| Constructor and Description |
|---|
BranchStructureIterator(int ifThenNumber,
int gotoNumber,
int blockNumber,
int slotNumber,
boolean delaySlot,
int minLength,
int maxLength,
int minBranchNumber,
int maxBranchNumber,
int maxBranchExecution) |
BranchStructureIterator(int ifThenNumber,
int gotoNumber,
int blockNumber,
int slotNumber,
boolean delaySlot,
int minLength,
int maxLength,
int minBranchNumber,
int maxBranchNumber,
int maxBranchExecution,
java.util.EnumSet<BranchStructureIterator.Flags> flags) |
| Modifier and Type | Method and Description |
|---|---|
BranchStructureIterator |
clone() |
boolean |
hasValue() |
void |
init() |
void |
next() |
void |
stop() |
BranchStructure |
value() |
public static final java.util.EnumSet<BranchStructureIterator.Flags> DEFAULT_FLAGS
public BranchStructureIterator(int ifThenNumber,
int gotoNumber,
int blockNumber,
int slotNumber,
boolean delaySlot,
int minLength,
int maxLength,
int minBranchNumber,
int maxBranchNumber,
int maxBranchExecution,
java.util.EnumSet<BranchStructureIterator.Flags> flags)
public BranchStructureIterator(int ifThenNumber,
int gotoNumber,
int blockNumber,
int slotNumber,
boolean delaySlot,
int minLength,
int maxLength,
int minBranchNumber,
int maxBranchNumber,
int maxBranchExecution)
public BranchStructure value()
value in interface ru.ispras.testbase.knowledge.iterator.Iterator<BranchStructure>public void init()
init in interface ru.ispras.testbase.knowledge.iterator.Iterator<BranchStructure>public boolean hasValue()
hasValue in interface ru.ispras.testbase.knowledge.iterator.Iterator<BranchStructure>public void next()
next in interface ru.ispras.testbase.knowledge.iterator.Iterator<BranchStructure>public void stop()
stop in interface ru.ispras.testbase.knowledge.iterator.Iterator<BranchStructure>public BranchStructureIterator clone()
clone in interface ru.ispras.testbase.knowledge.iterator.Iterator<BranchStructure>clone in class java.lang.Object