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
public abstract class AbstractFunctionInvokationExplicit extends AbstractExpression
A call that doesn't necessarily exist, for a type we don't necessarily have.
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.List<Expression>argsprivate JavaTypeInstanceclazzprivate java.lang.Stringmethod
-
Constructor Summary
Constructors Constructor Description AbstractFunctionInvokationExplicit(BytecodeLoc loc, InferredJavaType res, JavaTypeInstance clazz, java.lang.String method, java.util.List<Expression> args)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ExpressionapplyExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags)ExpressionapplyReverseExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags)voidcollectUsedLValues(LValueUsageCollector lValueUsageCollector)protected java.util.List<Expression>getArgs()protected JavaTypeInstancegetClazz()protected java.lang.StringgetMethod()PrecedencegetPrecedence()ExpressionreplaceSingleUsageLValues(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 Detail
-
clazz
private final JavaTypeInstance clazz
-
method
private final java.lang.String method
-
args
private final java.util.List<Expression> args
-
-
Constructor Detail
-
AbstractFunctionInvokationExplicit
AbstractFunctionInvokationExplicit(BytecodeLoc loc, InferredJavaType res, JavaTypeInstance clazz, java.lang.String method, java.util.List<Expression> args)
-
-
Method Detail
-
getClazz
protected JavaTypeInstance getClazz()
-
getMethod
protected java.lang.String getMethod()
-
getArgs
protected java.util.List<Expression> getArgs()
-
getPrecedence
public Precedence getPrecedence()
- Specified by:
getPrecedencein interfaceDumpableWithPrecedence- Specified by:
getPrecedencein 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
public void collectUsedLValues(LValueUsageCollector lValueUsageCollector)
-
-