public class StructuredAssignment extends AbstractStructuredStatement implements BoxingProcessor
| Modifier and Type | Field and Description |
|---|---|
private boolean |
creator |
private LValue |
lvalue |
private Expression |
rvalue |
| Constructor and Description |
|---|
StructuredAssignment(BytecodeLoc loc,
LValue lvalue,
Expression rvalue) |
StructuredAssignment(BytecodeLoc loc,
LValue lvalue,
Expression rvalue,
boolean creator) |
addLoc, alwaysDefines, canDefine, canFall, claimBlock, fallsNopToNext, getBreakableBlockOrNull, getContainer, getInline, getLoc, informBlockHeirachy, inlineable, isEffectivelyNOP, isProperlyStructured, isRecursivelyStructured, isScopeBlock, setContainer, suggestName, supportsBreak, supportsContinueBreak, toString, transformStructuredChildrenInReverseprivate LValue lvalue
private Expression rvalue
private boolean creator
public StructuredAssignment(BytecodeLoc loc, LValue lvalue, Expression rvalue)
public StructuredAssignment(BytecodeLoc loc, LValue lvalue, Expression rvalue, boolean creator)
public BytecodeLoc getCombinedLoc()
getCombinedLoc in interface HasByteCodeLocpublic boolean isCreator(LValue lvalue)
public void collectTypeUsages(TypeUsageCollector collector)
collectTypeUsages in interface TypeUsageCollectablepublic void transformStructuredChildren(StructuredStatementTransformer transformer, StructuredScope scope)
transformStructuredChildren in interface StructuredStatementpublic void linearizeInto(java.util.List<StructuredStatement> out)
linearizeInto in interface StructuredStatementpublic void traceLocalVariableScope(LValueScopeDiscoverer scopeDiscoverer)
traceLocalVariableScope in interface StructuredStatementpublic void markCreator(LValue scopedEntity, StatementContainer<StructuredStatement> hint)
markCreator in interface StructuredStatementmarkCreator in class AbstractStructuredStatementpublic java.util.List<LValue> findCreatedHere()
findCreatedHere in interface StructuredStatementfindCreatedHere in class AbstractStructuredStatementpublic LValue getLvalue()
public Expression getRvalue()
public boolean match(MatchIterator<StructuredStatement> matchIterator, MatchResultCollector matchResultCollector)
match in interface Matcher<StructuredStatement>match in class AbstractStructuredStatementpublic boolean equals(java.lang.Object o)
equals in class java.lang.Objectpublic void rewriteExpressions(ExpressionRewriter expressionRewriter)
rewriteExpressions in interface StructuredStatementpublic boolean rewriteBoxing(PrimitiveBoxingRewriter boxingRewriter)
rewriteBoxing in interface BoxingProcessorpublic void applyNonArgExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags)
applyNonArgExpressionRewriter in interface BoxingProcessor