Class ReturnValueStatement
- java.lang.Object
-
- org.benf.cfr.reader.bytecode.analysis.parse.statement.AbstractStatement
-
- org.benf.cfr.reader.bytecode.analysis.parse.statement.ReturnStatement
-
- org.benf.cfr.reader.bytecode.analysis.parse.statement.ReturnValueStatement
-
- All Implemented Interfaces:
HasByteCodeLoc
,DeepCloneable<Statement>
,Statement
,ComparableUnderEC
,Dumpable
public class ReturnValueStatement extends ReturnStatement
-
-
Field Summary
Fields Modifier and Type Field Description private JavaTypeInstance
fnReturnType
private Expression
rvalue
-
Constructor Summary
Constructors Constructor Description ReturnValueStatement(BytecodeLoc loc, Expression rvalue, JavaTypeInstance fnReturnType)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
canThrow(ExceptionCheck caught)
void
collectLValueUsage(LValueUsageCollector lValueUsageCollector)
ReturnStatement
deepClone(CloneHelper cloneHelper)
Dumper
dump(Dumper dumper)
boolean
equals(java.lang.Object o)
boolean
equivalentUnder(java.lang.Object o, EquivalenceConstraint constraint)
BytecodeLoc
getCombinedLoc()
JavaTypeInstance
getFnReturnType()
Expression
getReturnValue()
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.ReturnStatement
fallsToNext, outerDeepClone
-
Methods inherited from class org.benf.cfr.reader.bytecode.analysis.parse.statement.AbstractStatement
addLoc, collectLocallyMutatedVariables, collectLValueAssignments, collectObjectCreation, doesBlackListLValueReplacement, getCompoundParts, getContainer, getCreatedLValue, getLoc, getRValue, getTargetStatement, isCompound, setContainer, setLifetimeHint, toString, wantsLifetimeHint
-
-
-
-
Field Detail
-
rvalue
private Expression rvalue
-
fnReturnType
private final JavaTypeInstance fnReturnType
-
-
Constructor Detail
-
ReturnValueStatement
public ReturnValueStatement(BytecodeLoc loc, Expression rvalue, JavaTypeInstance fnReturnType)
-
-
Method Detail
-
deepClone
public ReturnStatement deepClone(CloneHelper cloneHelper)
-
getCombinedLoc
public BytecodeLoc getCombinedLoc()
-
getReturnValue
public Expression getReturnValue()
-
getFnReturnType
public JavaTypeInstance getFnReturnType()
-
replaceSingleUsageLValues
public void replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers)
-
rewriteExpressions
public void rewriteExpressions(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers)
-
collectLValueUsage
public void collectLValueUsage(LValueUsageCollector lValueUsageCollector)
-
getStructuredStatement
public StructuredStatement getStructuredStatement()
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equals
in classjava.lang.Object
-
equivalentUnder
public final boolean equivalentUnder(java.lang.Object o, EquivalenceConstraint constraint)
-
canThrow
public boolean canThrow(ExceptionCheck caught)
- Specified by:
canThrow
in interfaceStatement
- Overrides:
canThrow
in classAbstractStatement
-
-