Class MemberFunctionInvokationExplicit
- java.lang.Object
-
- org.benf.cfr.reader.bytecode.analysis.parse.expression.AbstractExpression
-
- org.benf.cfr.reader.bytecode.analysis.parse.expression.AbstractFunctionInvokationExplicit
-
- org.benf.cfr.reader.bytecode.analysis.parse.expression.MemberFunctionInvokationExplicit
-
- All Implemented Interfaces:
HasByteCodeLoc
,Expression
,DeepCloneable<Expression>
,ComparableUnderEC
,Dumpable
,DumpableWithPrecedence
,TypeUsageCollectable
public class MemberFunctionInvokationExplicit extends AbstractFunctionInvokationExplicit
A member function call that doesn't necessarily exist, for a type we don't necessarily have.
-
-
Field Summary
Fields Modifier and Type Field Description private Expression
object
-
Constructor Summary
Constructors Constructor Description MemberFunctionInvokationExplicit(BytecodeLoc loc, InferredJavaType res, JavaTypeInstance clazz, Expression object, java.lang.String method, java.util.List<Expression> args)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Expression
applyExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags)
Expression
applyReverseExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags)
void
collectUsedLValues(LValueUsageCollector lValueUsageCollector)
Expression
deepClone(CloneHelper cloneHelper)
Dumper
dumpInner(Dumper d)
boolean
equals(java.lang.Object o)
boolean
equivalentUnder(java.lang.Object o, EquivalenceConstraint constraint)
BytecodeLoc
getCombinedLoc()
Precedence
getPrecedence()
Expression
replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer)
-
Methods inherited from class org.benf.cfr.reader.bytecode.analysis.parse.expression.AbstractFunctionInvokationExplicit
getArgs, getClazz, getMethod
-
Methods inherited from class org.benf.cfr.reader.bytecode.analysis.parse.expression.AbstractExpression
addLoc, canPushDownInto, canThrow, collectTypeUsages, dump, dumpWithOuterPrecedence, getComputedLiteral, getInferredJavaType, getLoc, isSimple, isValidStatement, outerDeepClone, pushDown, toString, visit
-
-
-
-
Field Detail
-
object
private Expression object
-
-
Constructor Detail
-
MemberFunctionInvokationExplicit
MemberFunctionInvokationExplicit(BytecodeLoc loc, InferredJavaType res, JavaTypeInstance clazz, Expression object, java.lang.String method, java.util.List<Expression> args)
-
-
Method Detail
-
getCombinedLoc
public BytecodeLoc getCombinedLoc()
-
equals
public boolean equals(java.lang.Object o)
- Specified by:
equals
in classAbstractExpression
-
getPrecedence
public Precedence getPrecedence()
- Specified by:
getPrecedence
in interfaceDumpableWithPrecedence
- Overrides:
getPrecedence
in classAbstractFunctionInvokationExplicit
-
dumpInner
public Dumper dumpInner(Dumper d)
- Specified by:
dumpInner
in classAbstractExpression
-
replaceSingleUsageLValues
public Expression replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer)
- Specified by:
replaceSingleUsageLValues
in interfaceExpression
- Overrides:
replaceSingleUsageLValues
in classAbstractFunctionInvokationExplicit
-
applyExpressionRewriter
public Expression applyExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags)
- Specified by:
applyExpressionRewriter
in interfaceExpression
- Overrides:
applyExpressionRewriter
in classAbstractFunctionInvokationExplicit
-
applyReverseExpressionRewriter
public Expression applyReverseExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags)
- Specified by:
applyReverseExpressionRewriter
in interfaceExpression
- Overrides:
applyReverseExpressionRewriter
in classAbstractFunctionInvokationExplicit
-
collectUsedLValues
public void collectUsedLValues(LValueUsageCollector lValueUsageCollector)
- Specified by:
collectUsedLValues
in interfaceExpression
- Overrides:
collectUsedLValues
in classAbstractFunctionInvokationExplicit
-
equivalentUnder
public boolean equivalentUnder(java.lang.Object o, EquivalenceConstraint constraint)
-
deepClone
public Expression deepClone(CloneHelper cloneHelper)
-
-