public class StructuredSwitch extends AbstractStructuredBlockStatement implements BoxingProcessor
| Constructor and Description |
|---|
StructuredSwitch(BytecodeLoc loc,
Expression switchOn,
Op04StructuredStatement body,
BlockIdentifier blockIdentifier) |
StructuredSwitch(BytecodeLoc loc,
Expression switchOn,
Op04StructuredStatement body,
BlockIdentifier blockIdentifier,
boolean safeExpression) |
| Modifier and Type | Method and Description |
|---|---|
void |
applyNonArgExpressionRewriter(ExpressionRewriter expressionRewriter,
SSAIdentifiers ssaIdentifiers,
StatementContainer statementContainer,
ExpressionRewriterFlags flags) |
void |
collectTypeUsages(TypeUsageCollector collector) |
Dumper |
dump(Dumper dumper) |
BlockIdentifier |
getBlockIdentifier() |
BlockIdentifier |
getBreakableBlockOrNull() |
BytecodeLoc |
getCombinedLoc() |
Expression |
getSwitchOn() |
boolean |
isOnlyEmptyDefault() |
boolean |
isProperlyStructured() |
boolean |
isSafeExpression() |
boolean |
isScopeBlock() |
void |
linearizeInto(List<StructuredStatement> out) |
boolean |
match(MatchIterator<StructuredStatement> matchIterator,
MatchResultCollector matchResultCollector) |
boolean |
rewriteBoxing(PrimitiveBoxingRewriter boxingRewriter) |
void |
rewriteExpressions(ExpressionRewriter expressionRewriter) |
boolean |
supportsBreak() |
void |
traceLocalVariableScope(LValueScopeDiscoverer scopeDiscoverer) |
getBody, isRecursivelyStructured, transformStructuredChildrenaddLoc, alwaysDefines, canDefine, canFall, claimBlock, fallsNopToNext, findCreatedHere, getContainer, getInline, getLoc, informBlockHeirachy, inlineable, isEffectivelyNOP, markCreator, setContainer, suggestName, supportsContinueBreak, toString, transformStructuredChildrenInReversepublic StructuredSwitch(BytecodeLoc loc, Expression switchOn, Op04StructuredStatement body, BlockIdentifier blockIdentifier, boolean safeExpression)
public StructuredSwitch(BytecodeLoc loc, Expression switchOn, Op04StructuredStatement body, BlockIdentifier blockIdentifier)
public BytecodeLoc getCombinedLoc()
getCombinedLoc in interface HasByteCodeLocpublic Expression getSwitchOn()
public void collectTypeUsages(TypeUsageCollector collector)
collectTypeUsages in interface TypeUsageCollectablecollectTypeUsages in class AbstractStructuredBlockStatementpublic BlockIdentifier getBreakableBlockOrNull()
getBreakableBlockOrNull in interface StructuredStatementgetBreakableBlockOrNull in class AbstractStructuredStatementpublic boolean supportsBreak()
supportsBreak in interface StructuredStatementsupportsBreak in class AbstractStructuredStatementpublic boolean isProperlyStructured()
isProperlyStructured in interface StructuredStatementisProperlyStructured in class AbstractStructuredStatementpublic boolean isScopeBlock()
isScopeBlock in interface StructuredStatementisScopeBlock in class AbstractStructuredStatementpublic boolean rewriteBoxing(PrimitiveBoxingRewriter boxingRewriter)
rewriteBoxing in interface BoxingProcessorpublic void applyNonArgExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags)
applyNonArgExpressionRewriter in interface BoxingProcessorpublic BlockIdentifier getBlockIdentifier()
public void linearizeInto(List<StructuredStatement> out)
linearizeInto in interface StructuredStatementpublic void traceLocalVariableScope(LValueScopeDiscoverer scopeDiscoverer)
traceLocalVariableScope in interface StructuredStatementpublic boolean match(MatchIterator<StructuredStatement> matchIterator, MatchResultCollector matchResultCollector)
match in interface Matcher<StructuredStatement>match in class AbstractStructuredStatementpublic void rewriteExpressions(ExpressionRewriter expressionRewriter)
rewriteExpressions in interface StructuredStatementpublic boolean isOnlyEmptyDefault()
public boolean isSafeExpression()
Copyright © 2011-2021. All Rights Reserved.