Class ConstructorStatement
- java.lang.Object
-
- org.benf.cfr.reader.bytecode.analysis.parse.statement.AbstractStatement
-
- org.benf.cfr.reader.bytecode.analysis.parse.statement.ConstructorStatement
-
- All Implemented Interfaces:
HasByteCodeLoc
,DeepCloneable<Statement>
,Statement
,ComparableUnderEC
,Dumpable
public class ConstructorStatement extends AbstractStatement
This is a temporary statement - it should be replaced with an Assignment of a ConstructorInvokation However, it can force the type of the constructed object, which NEW is not capable of doing....
-
-
Field Summary
Fields Modifier and Type Field Description private MemberFunctionInvokation
invokation
-
Constructor Summary
Constructors Constructor Description ConstructorStatement(BytecodeLoc loc, MemberFunctionInvokation construction)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
collectLValueUsage(LValueUsageCollector lValueUsageCollector)
void
collectObjectCreation(CreationCollector creationCollector)
Statement
deepClone(CloneHelper cloneHelper)
Dumper
dump(Dumper dumper)
boolean
equivalentUnder(java.lang.Object o, EquivalenceConstraint constraint)
BytecodeLoc
getCombinedLoc()
StructuredStatement
getStructuredStatement()
void
replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers)
void
rewriteExpressions(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers)
-
Methods inherited from class org.benf.cfr.reader.bytecode.analysis.parse.statement.AbstractStatement
addLoc, canThrow, collectLocallyMutatedVariables, collectLValueAssignments, doesBlackListLValueReplacement, fallsToNext, getCompoundParts, getContainer, getCreatedLValue, getLoc, getRValue, getTargetStatement, isCompound, outerDeepClone, setContainer, setLifetimeHint, toString, wantsLifetimeHint
-
-
-
-
Field Detail
-
invokation
private MemberFunctionInvokation invokation
-
-
Constructor Detail
-
ConstructorStatement
public ConstructorStatement(BytecodeLoc loc, MemberFunctionInvokation construction)
-
-
Method Detail
-
deepClone
public Statement deepClone(CloneHelper cloneHelper)
-
getCombinedLoc
public BytecodeLoc getCombinedLoc()
-
replaceSingleUsageLValues
public void replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers)
-
rewriteExpressions
public void rewriteExpressions(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers)
-
collectLValueUsage
public void collectLValueUsage(LValueUsageCollector lValueUsageCollector)
-
collectObjectCreation
public void collectObjectCreation(CreationCollector creationCollector)
- Specified by:
collectObjectCreation
in interfaceStatement
- Overrides:
collectObjectCreation
in classAbstractStatement
-
getStructuredStatement
public StructuredStatement getStructuredStatement()
-
equivalentUnder
public final boolean equivalentUnder(java.lang.Object o, EquivalenceConstraint constraint)
-
-