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 ConstantPoolEntryMethodRefprivate 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) voidapplyNonArgExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) applyReverseExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) voidcollectTypeUsages(TypeUsageCollector collector) voidcollectUsedLValues(LValueUsageCollector lValueUsageCollector) booleanbooleanequivalentUnder(Object o, EquivalenceConstraint constraint) getArgs()protected final MethodPrototype(package private) final OverloadMethodSetbooleanreplaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer) booleanrewriteBoxing(PrimitiveBoxingRewriter boxingRewriter) Methods inherited from class AbstractExpression
addLoc, canPushDownInto, canThrow, dump, dumpInner, dumpWithOuterPrecedence, getComputedLiteral, getInferredJavaType, getLoc, getPrecedence, isSimple, outerDeepClone, pushDown, toString, visitMethods inherited from class Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface DeepCloneable
deepCloneMethods inherited from interface 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:
collectTypeUsagesin interfaceTypeUsageCollectable- Overrides:
collectTypeUsagesin classAbstractExpression
-
getArgs
-
replaceSingleUsageLValues
public Expression replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer) - Specified by:
replaceSingleUsageLValuesin interfaceExpression
-
applyExpressionRewriter
public Expression applyExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) - Specified by:
applyExpressionRewriterin interfaceExpression
-
applyReverseExpressionRewriter
public Expression applyReverseExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) - Specified by:
applyReverseExpressionRewriterin interfaceExpression
-
getTypeInstance
-
collectUsedLValues
- Specified by:
collectUsedLValuesin interfaceExpression
-
equals
- Specified by:
equalsin classAbstractExpression
-
equivalentUnder
- Specified by:
equivalentUnderin interfaceComparableUnderEC- Specified by:
equivalentUnderin interfaceExpression
-
getOverloadMethodSet
-
isValidStatement
public boolean isValidStatement()- Specified by:
isValidStatementin interfaceExpression- Overrides:
isValidStatementin classAbstractExpression
-
getMethodPrototype
-
rewriteBoxing
- Specified by:
rewriteBoxingin interfaceBoxingProcessor
-
applyNonArgExpressionRewriter
public void applyNonArgExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) - Specified by:
applyNonArgExpressionRewriterin interfaceBoxingProcessor
-