public abstract class AbstractStatement extends java.lang.Object implements Statement
| Modifier and Type | Field and Description |
|---|---|
private StatementContainer<Statement> |
container |
private BytecodeLoc |
loc |
| Constructor and Description |
|---|
AbstractStatement(BytecodeLoc loc) |
| Modifier and Type | Method and Description |
|---|---|
void |
addLoc(HasByteCodeLoc loc) |
boolean |
canThrow(ExceptionCheck caught) |
SSAIdentifiers<LValue> |
collectLocallyMutatedVariables(SSAIdentifierFactory<LValue,?> ssaIdentifierFactory) |
void |
collectLValueAssignments(LValueAssignmentCollector<Statement> lValueAssigmentCollector) |
void |
collectObjectCreation(CreationCollector creationCollector) |
boolean |
doesBlackListLValueReplacement(LValue lValue,
Expression expression) |
boolean |
fallsToNext() |
java.util.List<Statement> |
getCompoundParts() |
StatementContainer<Statement> |
getContainer() |
LValue |
getCreatedLValue() |
BytecodeLoc |
getLoc() |
Expression |
getRValue() |
protected Statement |
getTargetStatement(int idx) |
boolean |
isCompound() |
Statement |
outerDeepClone(CloneHelper cloneHelper) |
void |
setContainer(StatementContainer<Statement> container) |
void |
setLifetimeHint(LValue lv,
boolean usedInChildren) |
java.lang.String |
toString() |
java.util.Set<LValue> |
wantsLifetimeHint() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitcollectLValueUsage, equivalentUnder, getStructuredStatement, replaceSingleUsageLValues, rewriteExpressionsdeepClonegetCombinedLocprivate BytecodeLoc loc
private StatementContainer<Statement> container
public AbstractStatement(BytecodeLoc loc)
public BytecodeLoc getLoc()
getLoc in interface HasByteCodeLocpublic void addLoc(HasByteCodeLoc loc)
addLoc in interface HasByteCodeLocpublic void setContainer(StatementContainer<Statement> container)
setContainer in interface Statementpublic Statement outerDeepClone(CloneHelper cloneHelper)
outerDeepClone in interface DeepCloneable<Statement>public LValue getCreatedLValue()
getCreatedLValue in interface Statementpublic void collectLValueAssignments(LValueAssignmentCollector<Statement> lValueAssigmentCollector)
collectLValueAssignments in interface Statementpublic boolean doesBlackListLValueReplacement(LValue lValue, Expression expression)
doesBlackListLValueReplacement in interface Statementpublic void collectObjectCreation(CreationCollector creationCollector)
collectObjectCreation in interface Statementpublic SSAIdentifiers<LValue> collectLocallyMutatedVariables(SSAIdentifierFactory<LValue,?> ssaIdentifierFactory)
collectLocallyMutatedVariables in interface Statementpublic StatementContainer<Statement> getContainer()
getContainer in interface Statementpublic Expression getRValue()
protected Statement getTargetStatement(int idx)
public boolean isCompound()
isCompound in interface Statementpublic java.util.List<Statement> getCompoundParts()
getCompoundParts in interface Statementpublic final java.lang.String toString()
toString in class java.lang.Objectpublic boolean fallsToNext()
fallsToNext in interface Statementpublic boolean canThrow(ExceptionCheck caught)
public java.util.Set<LValue> wantsLifetimeHint()
wantsLifetimeHint in interface Statementpublic void setLifetimeHint(LValue lv, boolean usedInChildren)
setLifetimeHint in interface Statement