Class AbstractConstructorInvokation
java.lang.Object
org.benf.cfr.reader.bytecode.analysis.parse.expression.AbstractExpression
org.benf.cfr.reader.bytecode.analysis.parse.expression.AbstractConstructorInvokation
- All Implemented Interfaces:
HasByteCodeLoc
,Expression
,BoxingProcessor
,DeepCloneable<Expression>
,ComparableUnderEC
,Dumpable
,DumpableWithPrecedence
,TypeUsageCollectable
- Direct Known Subclasses:
ConstructorInvokationAnonymousInner
,ConstructorInvokationSimple
public abstract class AbstractConstructorInvokation
extends AbstractExpression
implements BoxingProcessor
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final List<Expression>
private final ConstantPoolEntryMethodRef
private final MethodPrototype
-
Constructor Summary
ConstructorsConstructorDescriptionAbstractConstructorInvokation
(BytecodeLoc loc, AbstractConstructorInvokation other, CloneHelper cloneHelper) AbstractConstructorInvokation
(BytecodeLoc loc, InferredJavaType inferredJavaType, ConstantPoolEntryMethodRef function, List<Expression> args) -
Method Summary
Modifier and TypeMethodDescriptionapplyExpressionRewriter
(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) void
applyNonArgExpressionRewriter
(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) applyReverseExpressionRewriter
(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) void
collectTypeUsages
(TypeUsageCollector collector) void
collectUsedLValues
(LValueUsageCollector lValueUsageCollector) boolean
boolean
equivalentUnder
(Object o, EquivalenceConstraint constraint) getArgs()
protected final MethodPrototype
(package private) final OverloadMethodSet
boolean
replaceSingleUsageLValues
(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer) boolean
rewriteBoxing
(PrimitiveBoxingRewriter boxingRewriter) Methods inherited from class org.benf.cfr.reader.bytecode.analysis.parse.expression.AbstractExpression
addLoc, canPushDownInto, canThrow, dump, dumpInner, dumpWithOuterPrecedence, getComputedLiteral, getInferredJavaType, getLoc, getPrecedence, isSimple, 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.loc.HasByteCodeLoc
getCombinedLoc
-
Field Details
-
function
-
methodPrototype
-
args
-
-
Constructor Details
-
AbstractConstructorInvokation
AbstractConstructorInvokation(BytecodeLoc loc, InferredJavaType inferredJavaType, ConstantPoolEntryMethodRef function, List<Expression> args) -
AbstractConstructorInvokation
AbstractConstructorInvokation(BytecodeLoc loc, AbstractConstructorInvokation other, CloneHelper cloneHelper)
-
-
Method Details
-
collectTypeUsages
- Specified by:
collectTypeUsages
in interfaceTypeUsageCollectable
- Overrides:
collectTypeUsages
in classAbstractExpression
-
getArgs
-
replaceSingleUsageLValues
public Expression replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer) - Specified by:
replaceSingleUsageLValues
in interfaceExpression
-
applyExpressionRewriter
public Expression applyExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) - Specified by:
applyExpressionRewriter
in interfaceExpression
-
applyReverseExpressionRewriter
public Expression applyReverseExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) - Specified by:
applyReverseExpressionRewriter
in interfaceExpression
-
getTypeInstance
-
collectUsedLValues
- Specified by:
collectUsedLValues
in interfaceExpression
-
equals
- Specified by:
equals
in classAbstractExpression
-
equivalentUnder
- Specified by:
equivalentUnder
in interfaceComparableUnderEC
- Specified by:
equivalentUnder
in interfaceExpression
-
getOverloadMethodSet
-
isValidStatement
public boolean isValidStatement()- Specified by:
isValidStatement
in interfaceExpression
- Overrides:
isValidStatement
in classAbstractExpression
-
getMethodPrototype
-
rewriteBoxing
- Specified by:
rewriteBoxing
in interfaceBoxingProcessor
-
applyNonArgExpressionRewriter
public void applyNonArgExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) - Specified by:
applyNonArgExpressionRewriter
in interfaceBoxingProcessor
-