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
public abstract class AbstractFieldVariable extends AbstractLValue
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.benf.cfr.reader.bytecode.analysis.parse.LValue
LValue.Creation
-
-
Field Summary
Fields Modifier and Type Field Description private ClassFileFieldclassFileFieldprivate java.lang.StringfailureNameprivate JavaTypeInstanceowningClass
-
Constructor Summary
Constructors Constructor Description AbstractFieldVariable(AbstractFieldVariable other)AbstractFieldVariable(InferredJavaType type, JavaTypeInstance clazz, java.lang.String varName)AbstractFieldVariable(InferredJavaType type, JavaTypeInstance clazz, ClassFileField classFileField)AbstractFieldVariable(ClassFileField field, JavaTypeInstance owningClass)AbstractFieldVariable(ConstantPoolEntry field)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcollectLValueAssignments(Expression assignedTo, StatementContainer statementContainer, LValueAssignmentCollector lValueAssigmentCollector)voidcollectTypeUsages(TypeUsageCollector collector)SSAIdentifiers<LValue>collectVariableMutation(SSAIdentifierFactory<LValue,?> ssaIdentifierFactory)booleanequals(java.lang.Object o)ClassFileFieldgetClassFileField()static ClassFileFieldgetField(ConstantPoolEntryFieldRef fieldRef)java.lang.StringgetFieldName()private static InferredJavaTypegetFieldType(ConstantPoolEntryFieldRef fieldRef)intgetNumberOfCreators()JavaTypeInstancegetOwningClassType()java.lang.StringgetRawFieldName()inthashCode()booleanisFakeIgnored()booleanisFinal()protected booleanisHiddenDeclaration()booleanisVar()voidmarkFinal()voidmarkVar()-
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 Detail
-
classFileField
private final ClassFileField classFileField
-
failureName
private final java.lang.String failureName
-
owningClass
private final JavaTypeInstance owningClass
-
-
Constructor Detail
-
AbstractFieldVariable
AbstractFieldVariable(ConstantPoolEntry field)
-
AbstractFieldVariable
AbstractFieldVariable(ClassFileField field, JavaTypeInstance owningClass)
-
AbstractFieldVariable
AbstractFieldVariable(AbstractFieldVariable other)
-
AbstractFieldVariable
AbstractFieldVariable(InferredJavaType type, JavaTypeInstance clazz, java.lang.String varName)
-
AbstractFieldVariable
AbstractFieldVariable(InferredJavaType type, JavaTypeInstance clazz, ClassFileField classFileField)
-
-
Method Detail
-
collectTypeUsages
public void collectTypeUsages(TypeUsageCollector collector)
- Specified by:
collectTypeUsagesin interfaceTypeUsageCollectable- Overrides:
collectTypeUsagesin classAbstractLValue
-
markFinal
public void markFinal()
-
isFinal
public boolean isFinal()
-
isFakeIgnored
public boolean isFakeIgnored()
- Specified by:
isFakeIgnoredin interfaceLValue- Overrides:
isFakeIgnoredin classAbstractLValue
-
markVar
public void markVar()
-
isVar
public boolean isVar()
-
getNumberOfCreators
public int getNumberOfCreators()
-
getOwningClassType
public JavaTypeInstance getOwningClassType()
-
getFieldName
public java.lang.String getFieldName()
-
isHiddenDeclaration
protected boolean isHiddenDeclaration()
-
getRawFieldName
public java.lang.String getRawFieldName()
-
getClassFileField
public ClassFileField getClassFileField()
-
collectVariableMutation
public SSAIdentifiers<LValue> collectVariableMutation(SSAIdentifierFactory<LValue,?> ssaIdentifierFactory)
-
collectLValueAssignments
public void collectLValueAssignments(Expression assignedTo, StatementContainer statementContainer, LValueAssignmentCollector lValueAssigmentCollector)
-
getField
public static ClassFileField getField(ConstantPoolEntryFieldRef fieldRef)
-
getFieldType
private static InferredJavaType getFieldType(ConstantPoolEntryFieldRef fieldRef)
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
-