Interface LValueRewriter<T>
-
- All Known Implementing Classes:
LValueAssignmentAndAliasCondenser,LValueAssignmentAndAliasCondenser.AliasRewriter,LValueAssignmentAndAliasCondenser.MutationRewriterFirstPass,LValueAssignmentAndAliasCondenser.MutationRewriterSecondPass
public interface LValueRewriter<T>
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classLValueRewriter.Util
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidcheckPostConditions(LValue lValue, Expression rValue)booleanexplicitlyReplaceThisLValue(LValue lValue)ExpressiongetLValueReplacement(LValue lValue, SSAIdentifiers<LValue> ssaIdentifiers, StatementContainer<T> statementContainer)LValueRewritergetWithFixed(java.util.Set<SSAIdent> fixed)LValueRewriter<T>keepConstant(java.util.Collection<LValue> usedLValues)booleanneedLR()
-
-
-
Method Detail
-
getLValueReplacement
Expression getLValueReplacement(LValue lValue, SSAIdentifiers<LValue> ssaIdentifiers, StatementContainer<T> statementContainer)
-
explicitlyReplaceThisLValue
boolean explicitlyReplaceThisLValue(LValue lValue)
-
checkPostConditions
void checkPostConditions(LValue lValue, Expression rValue)
-
getWithFixed
LValueRewriter getWithFixed(java.util.Set<SSAIdent> fixed)
-
needLR
boolean needLR()
-
keepConstant
LValueRewriter<T> keepConstant(java.util.Collection<LValue> usedLValues)
-
-