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 LValue
LValue.Creation -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate JavaAnnotatedTypeInstanceprivate booleanprivate booleanprivate final Identprivate final intprivate booleanprivate final NamedVariableprivate 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) booleancanThrow(ExceptionCheck caught) <T> voidcollectLValueAssignments(Expression assignedTo, StatementContainer<T> statementContainer, LValueAssignmentCollector<T> lValueAssigmentCollector) collectVariableMutation(SSAIdentifierFactory<LValue, ?> ssaIdentifierFactory) deepClone(CloneHelper cloneHelper) booleanintgetIdx()getName()intintinthashCode()booleanbooleanisFinal()booleanisVar()voidvoidvoidmarkVar()replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer) voidsetCustomCreationType(JavaAnnotatedTypeInstance customCreationType) Methods inherited from class 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 -
ignored
private boolean ignored -
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() -
markIgnored
public void markIgnored() -
isFakeIgnored
public boolean isFakeIgnored()- Specified by:
isFakeIgnoredin interfaceLValue- Overrides:
isFakeIgnoredin classAbstractLValue
-
isVar
public boolean isVar() -
setCustomCreationType
-
getAnnotatedCreationType
- Specified by:
getAnnotatedCreationTypein interfaceLValue- Overrides:
getAnnotatedCreationTypein classAbstractLValue
-
deepClone
-
getPrecedence
- Specified by:
getPrecedencein interfaceDumpableWithPrecedence- Specified by:
getPrecedencein classAbstractLValue
-
dump
-
dumpInner
- Specified by:
dumpInnerin classAbstractLValue
-
getName
-
getIdx
public int getIdx() -
canThrow
- Specified by:
canThrowin interfaceLValue- Overrides:
canThrowin 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
-