Class NewPrimitiveArray
- java.lang.Object
-
- org.benf.cfr.reader.bytecode.analysis.parse.expression.AbstractExpression
-
- org.benf.cfr.reader.bytecode.analysis.parse.expression.AbstractNewArray
-
- org.benf.cfr.reader.bytecode.analysis.parse.expression.NewPrimitiveArray
-
- All Implemented Interfaces:
HasByteCodeLoc
,Expression
,DeepCloneable<Expression>
,ComparableUnderEC
,Dumpable
,DumpableWithPrecedence
,TypeUsageCollectable
public class NewPrimitiveArray extends AbstractNewArray
-
-
Field Summary
Fields Modifier and Type Field Description private Expression
size
private JavaTypeInstance
type
-
Constructor Summary
Constructors Modifier Constructor Description NewPrimitiveArray(BytecodeLoc loc, Expression size, byte type)
NewPrimitiveArray(BytecodeLoc loc, Expression size, JavaTypeInstance type)
private
NewPrimitiveArray(BytecodeLoc loc, InferredJavaType inferredJavaType, JavaTypeInstance type, Expression size)
-
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
collectTypeUsages(TypeUsageCollector collector)
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()
Expression
getDimSize(int dim)
int
getNumDims()
int
getNumSizedDims()
Expression
replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer)
-
Methods inherited from class org.benf.cfr.reader.bytecode.analysis.parse.expression.AbstractNewArray
getPrecedence
-
Methods inherited from class org.benf.cfr.reader.bytecode.analysis.parse.expression.AbstractExpression
addLoc, canPushDownInto, canThrow, dump, dumpWithOuterPrecedence, getComputedLiteral, getInferredJavaType, getLoc, isSimple, isValidStatement, outerDeepClone, pushDown, toString, visit
-
-
-
-
Field Detail
-
size
private Expression size
-
type
private final JavaTypeInstance type
-
-
Constructor Detail
-
NewPrimitiveArray
public NewPrimitiveArray(BytecodeLoc loc, Expression size, byte type)
-
NewPrimitiveArray
public NewPrimitiveArray(BytecodeLoc loc, Expression size, JavaTypeInstance type)
-
NewPrimitiveArray
private NewPrimitiveArray(BytecodeLoc loc, InferredJavaType inferredJavaType, JavaTypeInstance type, Expression size)
-
-
Method Detail
-
getCombinedLoc
public BytecodeLoc getCombinedLoc()
-
collectTypeUsages
public void collectTypeUsages(TypeUsageCollector collector)
- Specified by:
collectTypeUsages
in interfaceTypeUsageCollectable
- Overrides:
collectTypeUsages
in classAbstractExpression
-
deepClone
public Expression deepClone(CloneHelper cloneHelper)
-
dumpInner
public Dumper dumpInner(Dumper d)
- Specified by:
dumpInner
in classAbstractExpression
-
getNumDims
public int getNumDims()
- Specified by:
getNumDims
in classAbstractNewArray
-
getNumSizedDims
public int getNumSizedDims()
- Specified by:
getNumSizedDims
in classAbstractNewArray
-
getDimSize
public Expression getDimSize(int dim)
- Specified by:
getDimSize
in classAbstractNewArray
-
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)
-
equals
public boolean equals(java.lang.Object o)
- Specified by:
equals
in classAbstractExpression
-
equivalentUnder
public final boolean equivalentUnder(java.lang.Object o, EquivalenceConstraint constraint)
-
-