Class LocalVariable
java.lang.Object
org.benf.cfr.reader.bytecode.analysis.parse.lvalue.AbstractLValue
org.benf.cfr.reader.bytecode.analysis.parse.lvalue.LocalVariable
- All Implemented Interfaces:
LValue
,DeepCloneable<LValue>
,Dumpable
,DumpableWithPrecedence
,TypeUsageCollectable
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.benf.cfr.reader.bytecode.analysis.parse.LValue
LValue.Creation
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate JavaAnnotatedTypeInstance
private boolean
private boolean
private final Ident
private final int
private final NamedVariable
private final int
-
Constructor Summary
ConstructorsConstructorDescriptionLocalVariable
(int stackPosition, Ident ident, VariableNamer variableNamer, int originalRawOffset, boolean clashed, InferredJavaType inferredJavaType) LocalVariable
(String name, InferredJavaType inferredJavaType) -
Method Summary
Modifier and TypeMethodDescriptionapplyExpressionRewriter
(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) boolean
canThrow
(ExceptionCheck caught) <T> void
collectLValueAssignments
(Expression assignedTo, StatementContainer<T> statementContainer, LValueAssignmentCollector<T> lValueAssigmentCollector) collectVariableMutation
(SSAIdentifierFactory<LValue, ?> ssaIdentifierFactory) deepClone
(CloneHelper cloneHelper) boolean
int
getIdx()
getName()
int
int
int
hashCode()
boolean
isFinal()
boolean
isVar()
void
void
markVar()
replaceSingleUsageLValues
(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer) void
setCustomCreationType
(JavaAnnotatedTypeInstance customCreationType) Methods inherited from class org.benf.cfr.reader.bytecode.analysis.parse.lvalue.AbstractLValue
collectLValueUsage, collectTypeUsages, doesBlackListLValueReplacement, dump, dumpWithOuterPrecedence, getInferredJavaType, outerDeepClone, toString, typeToString, validIterator
-
Field Details
-
name
-
idx
private final int idx -
ident
-
guessedFinal
private boolean guessedFinal -
guessedVar
private boolean guessedVar -
originalRawOffset
private final int originalRawOffset -
customCreationType
-
-
Constructor Details
-
LocalVariable
public LocalVariable(int stackPosition, Ident ident, VariableNamer variableNamer, int originalRawOffset, boolean clashed, InferredJavaType inferredJavaType) -
LocalVariable
-
-
Method Details
-
getOriginalRawOffset
public int getOriginalRawOffset() -
getNumberOfCreators
public int getNumberOfCreators() -
isFinal
public boolean isFinal() -
markFinal
public void markFinal() -
markVar
public void markVar() -
isVar
public boolean isVar() -
setCustomCreationType
-
getAnnotatedCreationType
- Specified by:
getAnnotatedCreationType
in interfaceLValue
- Overrides:
getAnnotatedCreationType
in classAbstractLValue
-
deepClone
-
getPrecedence
- Specified by:
getPrecedence
in interfaceDumpableWithPrecedence
- Specified by:
getPrecedence
in classAbstractLValue
-
dump
- Specified by:
dump
in interfaceLValue
- Overrides:
dump
in classAbstractLValue
-
dumpInner
- Specified by:
dumpInner
in classAbstractLValue
-
getName
-
getIdx
public int getIdx() -
canThrow
- Specified by:
canThrow
in interfaceLValue
- Overrides:
canThrow
in classAbstractLValue
-
collectLValueAssignments
public <T> void collectLValueAssignments(Expression assignedTo, StatementContainer<T> statementContainer, LValueAssignmentCollector<T> lValueAssigmentCollector) -
replaceSingleUsageLValues
public LValue replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer) -
collectVariableMutation
public SSAIdentifiers<LValue> collectVariableMutation(SSAIdentifierFactory<LValue, ?> ssaIdentifierFactory) -
applyExpressionRewriter
public LValue applyExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) -
equals
-
hashCode
public int hashCode()
-