Class AbstractFunctionInvokationExplicit
java.lang.Object
org.benf.cfr.reader.bytecode.analysis.parse.expression.AbstractExpression
org.benf.cfr.reader.bytecode.analysis.parse.expression.AbstractFunctionInvokationExplicit
- All Implemented Interfaces:
HasByteCodeLoc
,Expression
,DeepCloneable<Expression>
,ComparableUnderEC
,Dumpable
,DumpableWithPrecedence
,TypeUsageCollectable
- Direct Known Subclasses:
ConstructorInvokationExplicit
,MemberFunctionInvokationExplicit
,StaticFunctionInvokationExplicit
A call that doesn't necessarily exist, for a type we don't necessarily have.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final List<Expression>
private final JavaTypeInstance
private final String
-
Constructor Summary
ConstructorsConstructorDescriptionAbstractFunctionInvokationExplicit
(BytecodeLoc loc, InferredJavaType res, JavaTypeInstance clazz, String method, List<Expression> args) -
Method Summary
Modifier and TypeMethodDescriptionapplyExpressionRewriter
(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) applyReverseExpressionRewriter
(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) void
collectUsedLValues
(LValueUsageCollector lValueUsageCollector) protected List<Expression>
getArgs()
protected JavaTypeInstance
getClazz()
protected String
replaceSingleUsageLValues
(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer) Methods inherited from class org.benf.cfr.reader.bytecode.analysis.parse.expression.AbstractExpression
addLoc, canPushDownInto, canThrow, collectTypeUsages, dump, dumpInner, dumpWithOuterPrecedence, equals, getComputedLiteral, getInferredJavaType, getLoc, isSimple, isValidStatement, outerDeepClone, pushDown, toString, visit
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.benf.cfr.reader.bytecode.analysis.parse.rewriters.DeepCloneable
deepClone
Methods inherited from interface org.benf.cfr.reader.bytecode.analysis.parse.Expression
equivalentUnder
Methods inherited from interface org.benf.cfr.reader.bytecode.analysis.loc.HasByteCodeLoc
getCombinedLoc
-
Field Details
-
clazz
-
method
-
args
-
-
Constructor Details
-
AbstractFunctionInvokationExplicit
AbstractFunctionInvokationExplicit(BytecodeLoc loc, InferredJavaType res, JavaTypeInstance clazz, String method, List<Expression> args)
-
-
Method Details
-
getClazz
-
getMethod
-
getArgs
-
getPrecedence
- Specified by:
getPrecedence
in interfaceDumpableWithPrecedence
- Specified by:
getPrecedence
in classAbstractExpression
-
replaceSingleUsageLValues
public Expression replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer) -
applyExpressionRewriter
public Expression applyExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) -
applyReverseExpressionRewriter
public Expression applyReverseExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) -
collectUsedLValues
-