Class AbstractFieldVariable
java.lang.Object
org.benf.cfr.reader.bytecode.analysis.parse.lvalue.AbstractLValue
org.benf.cfr.reader.bytecode.analysis.parse.lvalue.AbstractFieldVariable
- All Implemented Interfaces:
LValue
,DeepCloneable<LValue>
,Dumpable
,DumpableWithPrecedence
,TypeUsageCollectable
- Direct Known Subclasses:
FieldVariable
,StaticVariable
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.benf.cfr.reader.bytecode.analysis.parse.LValue
LValue.Creation
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ClassFileField
private final String
private final JavaTypeInstance
-
Constructor Summary
ConstructorsConstructorDescriptionAbstractFieldVariable
(InferredJavaType type, JavaTypeInstance clazz, String varName) AbstractFieldVariable
(InferredJavaType type, JavaTypeInstance clazz, ClassFileField classFileField) -
Method Summary
Modifier and TypeMethodDescriptionvoid
collectLValueAssignments
(Expression assignedTo, StatementContainer statementContainer, LValueAssignmentCollector lValueAssigmentCollector) void
collectTypeUsages
(TypeUsageCollector collector) collectVariableMutation
(SSAIdentifierFactory<LValue, ?> ssaIdentifierFactory) boolean
static ClassFileField
getField
(ConstantPoolEntryFieldRef fieldRef) private static InferredJavaType
getFieldType
(ConstantPoolEntryFieldRef fieldRef) int
int
hashCode()
boolean
isFinal()
protected boolean
boolean
isVar()
void
void
markVar()
Methods inherited from class org.benf.cfr.reader.bytecode.analysis.parse.lvalue.AbstractLValue
canThrow, collectLValueUsage, doesBlackListLValueReplacement, dump, dump, dumpInner, dumpWithOuterPrecedence, getAnnotatedCreationType, getInferredJavaType, getPrecedence, outerDeepClone, toString, typeToString, validIterator
Methods inherited from class java.lang.Object
clone, finalize, getClass, 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.parse.LValue
applyExpressionRewriter, replaceSingleUsageLValues
-
Field Details
-
classFileField
-
failureName
-
owningClass
-
-
Constructor Details
-
AbstractFieldVariable
AbstractFieldVariable(ConstantPoolEntry field) -
AbstractFieldVariable
AbstractFieldVariable(AbstractFieldVariable other) -
AbstractFieldVariable
AbstractFieldVariable(InferredJavaType type, JavaTypeInstance clazz, String varName) -
AbstractFieldVariable
AbstractFieldVariable(InferredJavaType type, JavaTypeInstance clazz, ClassFileField classFileField)
-
-
Method Details
-
collectTypeUsages
- Specified by:
collectTypeUsages
in interfaceTypeUsageCollectable
- Overrides:
collectTypeUsages
in classAbstractLValue
-
markFinal
public void markFinal() -
isFinal
public boolean isFinal() -
markVar
public void markVar() -
isVar
public boolean isVar() -
getNumberOfCreators
public int getNumberOfCreators() -
getOwningClassType
-
getFieldName
-
isHiddenDeclaration
protected boolean isHiddenDeclaration() -
getRawFieldName
-
getClassFileField
-
collectVariableMutation
public SSAIdentifiers<LValue> collectVariableMutation(SSAIdentifierFactory<LValue, ?> ssaIdentifierFactory) -
collectLValueAssignments
public void collectLValueAssignments(Expression assignedTo, StatementContainer statementContainer, LValueAssignmentCollector lValueAssigmentCollector) -
getField
-
getFieldType
-
equals
-
hashCode
public int hashCode()
-