public abstract class AbstractPlaceholder extends Object implements StructuredStatement
Constructor and Description |
---|
AbstractPlaceholder() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
supportsBreak, supportsContinueBreak
public void linearizeInto(List<StructuredStatement> out)
linearizeInto
in interface StructuredStatement
public void collectTypeUsages(TypeUsageCollector collector)
collectTypeUsages
in interface TypeUsageCollectable
public BytecodeLoc getCombinedLoc()
getCombinedLoc
in interface HasByteCodeLoc
public BytecodeLoc getLoc()
getLoc
in interface HasByteCodeLoc
public void addLoc(HasByteCodeLoc loc)
addLoc
in interface HasByteCodeLoc
public boolean isProperlyStructured()
isProperlyStructured
in interface StructuredStatement
public boolean isRecursivelyStructured()
isRecursivelyStructured
in interface StructuredStatement
public BlockIdentifier getBreakableBlockOrNull()
getBreakableBlockOrNull
in interface StructuredStatement
public boolean fallsNopToNext()
fallsNopToNext
in interface StructuredStatement
public boolean isScopeBlock()
isScopeBlock
in interface StructuredStatement
public void transformStructuredChildren(StructuredStatementTransformer transformer, StructuredScope scope)
transformStructuredChildren
in interface StructuredStatement
public void transformStructuredChildrenInReverse(StructuredStatementTransformer transformer, StructuredScope scope)
transformStructuredChildrenInReverse
in interface StructuredStatement
public void rewriteExpressions(ExpressionRewriter expressionRewriter)
rewriteExpressions
in interface StructuredStatement
public StructuredStatement informBlockHeirachy(Vector<BlockIdentifier> blockIdentifiers)
informBlockHeirachy
in interface StructuredStatement
public StructuredStatement claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn)
claimBlock
in interface StructuredStatement
public Op04StructuredStatement getContainer()
getContainer
in interface StructuredStatement
public void setContainer(Op04StructuredStatement container)
setContainer
in interface StructuredStatement
public void traceLocalVariableScope(LValueScopeDiscoverer scopeDiscoverer)
traceLocalVariableScope
in interface StructuredStatement
public void markCreator(LValue scopedEntity, StatementContainer<StructuredStatement> hint)
markCreator
in interface StructuredStatement
public boolean alwaysDefines(LValue scopedEntity)
alwaysDefines
in interface StructuredStatement
public boolean canDefine(LValue scopedEntity, ScopeDiscoverInfoCache factCache)
canDefine
in interface StructuredStatement
public boolean canFall()
canFall
in interface StructuredStatement
public List<LValue> findCreatedHere()
findCreatedHere
in interface StructuredStatement
public String suggestName(LocalVariable createdHere, Predicate<String> testNameUsedFn)
suggestName
in interface StructuredStatement
public boolean inlineable()
inlineable
in interface StructuredStatement
public Op04StructuredStatement getInline()
getInline
in interface StructuredStatement
public boolean isEffectivelyNOP()
isEffectivelyNOP
in interface StructuredStatement
Copyright © 2011-2021. All Rights Reserved.