Class WhileStatement
- java.lang.Object
-
- org.benf.cfr.reader.bytecode.analysis.parse.statement.AbstractStatement
-
- org.benf.cfr.reader.bytecode.analysis.parse.statement.WhileStatement
-
- All Implemented Interfaces:
HasByteCodeLoc
,DeepCloneable<Statement>
,Statement
,ComparableUnderEC
,Dumpable
public class WhileStatement extends AbstractStatement
-
-
Field Summary
Fields Modifier and Type Field Description private BlockIdentifier
blockIdentifier
private ConditionalExpression
condition
-
Constructor Summary
Constructors Constructor Description WhileStatement(BytecodeLoc loc, ConditionalExpression conditionalExpression, BlockIdentifier blockIdentifier)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
collectLValueUsage(LValueUsageCollector lValueUsageCollector)
Statement
deepClone(CloneHelper cloneHelper)
Dumper
dump(Dumper dumper)
boolean
equivalentUnder(java.lang.Object o, EquivalenceConstraint constraint)
private int
getBackJumpIndex()
BlockIdentifier
getBlockIdentifier()
BytecodeLoc
getCombinedLoc()
ConditionalExpression
getCondition()
StructuredStatement
getStructuredStatement()
void
replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers)
void
replaceWithForLoop(AssignmentSimple initial, java.util.List<AbstractAssignmentExpression> assignment)
void
rewriteExpressions(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers)
-
Methods inherited from class org.benf.cfr.reader.bytecode.analysis.parse.statement.AbstractStatement
addLoc, canThrow, collectLocallyMutatedVariables, collectLValueAssignments, collectObjectCreation, doesBlackListLValueReplacement, fallsToNext, getCompoundParts, getContainer, getCreatedLValue, getLoc, getRValue, getTargetStatement, isCompound, outerDeepClone, setContainer, setLifetimeHint, toString, wantsLifetimeHint
-
-
-
-
Field Detail
-
condition
private ConditionalExpression condition
-
blockIdentifier
private BlockIdentifier blockIdentifier
-
-
Constructor Detail
-
WhileStatement
public WhileStatement(BytecodeLoc loc, ConditionalExpression conditionalExpression, BlockIdentifier blockIdentifier)
-
-
Method Detail
-
getCombinedLoc
public BytecodeLoc getCombinedLoc()
-
deepClone
public Statement deepClone(CloneHelper cloneHelper)
-
getBackJumpIndex
private int getBackJumpIndex()
-
replaceWithForLoop
public void replaceWithForLoop(AssignmentSimple initial, java.util.List<AbstractAssignmentExpression> assignment)
-
replaceSingleUsageLValues
public void replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers)
-
rewriteExpressions
public void rewriteExpressions(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers)
-
collectLValueUsage
public void collectLValueUsage(LValueUsageCollector lValueUsageCollector)
-
getStructuredStatement
public StructuredStatement getStructuredStatement()
-
getBlockIdentifier
public BlockIdentifier getBlockIdentifier()
-
getCondition
public ConditionalExpression getCondition()
-
equivalentUnder
public final boolean equivalentUnder(java.lang.Object o, EquivalenceConstraint constraint)
-
-