Class LValueAssignmentAndAliasCondenser.MutationRewriterFirstPass
java.lang.Object
org.benf.cfr.reader.bytecode.analysis.parse.utils.LValueAssignmentAndAliasCondenser.MutationRewriterFirstPass
- All Implemented Interfaces:
LValueRewriter<Statement>
- Enclosing class:
- LValueAssignmentAndAliasCondenser
public class LValueAssignmentAndAliasCondenser.MutationRewriterFirstPass
extends Object
implements LValueRewriter<Statement>
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.benf.cfr.reader.bytecode.analysis.parse.utils.LValueRewriter
LValueRewriter.Util
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Map<LValueAssignmentAndAliasCondenser.VersionedLValue,
Set<StatementContainer>> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
checkPostConditions
(LValue lValue, Expression rValue) boolean
explicitlyReplaceThisLValue
(LValue lValue) getLValueReplacement
(LValue lValue, SSAIdentifiers<LValue> ssaIdentifiers, StatementContainer<Statement> statementContainer) private StatementContainer
getUniqueParent
(StatementContainer start, Set<StatementContainer> seen) getWithFixed
(Set fixed) keepConstant
(Collection<LValue> usedLValues) boolean
needLR()
-
Field Details
-
mutableUseFound
private final Map<LValueAssignmentAndAliasCondenser.VersionedLValue,Set<StatementContainer>> mutableUseFound
-
-
Constructor Details
-
MutationRewriterFirstPass
public MutationRewriterFirstPass()
-
-
Method Details
-
getLValueReplacement
public Expression getLValueReplacement(LValue lValue, SSAIdentifiers<LValue> ssaIdentifiers, StatementContainer<Statement> statementContainer) - Specified by:
getLValueReplacement
in interfaceLValueRewriter<Statement>
-
needLR
public boolean needLR()- Specified by:
needLR
in interfaceLValueRewriter<Statement>
-
keepConstant
- Specified by:
keepConstant
in interfaceLValueRewriter<Statement>
-
getWithFixed
- Specified by:
getWithFixed
in interfaceLValueRewriter<Statement>
-
explicitlyReplaceThisLValue
- Specified by:
explicitlyReplaceThisLValue
in interfaceLValueRewriter<Statement>
-
checkPostConditions
- Specified by:
checkPostConditions
in interfaceLValueRewriter<Statement>
-
getUniqueParent
-
getSecondPassRewriter
-