public class ProgramFieldOptimizationInfo extends FieldOptimizationInfo implements proguard.classfile.attribute.visitor.AttributeVisitor
value| Constructor and Description |
|---|
ProgramFieldOptimizationInfo(proguard.classfile.Clazz clazz,
proguard.classfile.Field field,
boolean alwaysInitializeValue) |
ProgramFieldOptimizationInfo(ProgramFieldOptimizationInfo programFieldOptimizationInfo) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canBeMadePrivate()
Returns whether the field can be made private.
|
void |
generalizeReferencedClass(proguard.evaluation.value.ReferenceValue referencedClass)
Specifies a representation of the class through which the field is
accessed.
|
void |
generalizeValue(proguard.evaluation.value.Value value)
Specifies a representation of the value of the field.
|
static ProgramFieldOptimizationInfo |
getProgramFieldOptimizationInfo(proguard.classfile.Field field)
Returns the ProgramFieldOptimizationInfo instance from the given field.
|
proguard.evaluation.value.ReferenceValue |
getReferencedClass()
Returns a representation of the class through which the field is
accessed, or null if it is unknown.
|
boolean |
isKept()
Returns whether the method is kept.
|
boolean |
isRead()
Returns whether the field is ever read.
|
boolean |
isWritten()
Returns whether the field is ever written to.
|
void |
resetValue(proguard.classfile.Clazz clazz,
proguard.classfile.Field field)
Initializes the representation of the value of the field.
|
void |
setCanNotBeMadePrivate()
Specifies that the field can be made private.
|
static void |
setProgramFieldOptimizationInfo(proguard.classfile.Clazz clazz,
proguard.classfile.Field field,
boolean optimizeConservatively)
Creates and sets a ProgramFieldOptimizationInfo instance on the given field.
|
void |
setRead()
Specifies that the field is read.
|
void |
setWritten()
Specifies that the field is written to.
|
void |
visitAnyAttribute(proguard.classfile.Clazz clazz,
proguard.classfile.attribute.Attribute attribute) |
void |
visitConstantValueAttribute(proguard.classfile.Clazz clazz,
proguard.classfile.Field field,
proguard.classfile.attribute.ConstantValueAttribute constantValueAttribute) |
getFieldOptimizationInfo, getValue, setFieldOptimizationInfo, setValueclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitvisitAnnotationDefaultAttribute, visitAnyAnnotationsAttribute, visitAnyParameterAnnotationsAttribute, visitAnyTypeAnnotationsAttribute, visitBootstrapMethodsAttribute, visitCodeAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitEnclosingMethodAttribute, visitExceptionsAttribute, visitInnerClassesAttribute, visitLineNumberTableAttribute, visitLocalVariableTableAttribute, visitLocalVariableTypeTableAttribute, visitMethodParametersAttribute, visitModuleAttribute, visitModuleMainClassAttribute, visitModulePackagesAttribute, visitNestHostAttribute, visitNestMembersAttribute, visitPermittedSubclassesAttribute, visitRecordAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleParameterAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleParameterAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitSignatureAttribute, visitSignatureAttribute, visitSignatureAttribute, visitSignatureAttribute, visitSignatureAttribute, visitSourceDebugExtensionAttribute, visitSourceDirAttribute, visitSourceFileAttribute, visitStackMapAttribute, visitStackMapTableAttribute, visitSyntheticAttribute, visitSyntheticAttribute, visitSyntheticAttribute, visitSyntheticAttribute, visitUnknownAttributepublic ProgramFieldOptimizationInfo(proguard.classfile.Clazz clazz,
proguard.classfile.Field field,
boolean alwaysInitializeValue)
public ProgramFieldOptimizationInfo(ProgramFieldOptimizationInfo programFieldOptimizationInfo)
public boolean isKept()
FieldOptimizationInfoisKept in class FieldOptimizationInfopublic void setWritten()
public boolean isWritten()
FieldOptimizationInfoisWritten in class FieldOptimizationInfopublic void setRead()
public boolean isRead()
FieldOptimizationInfoisRead in class FieldOptimizationInfopublic void setCanNotBeMadePrivate()
public boolean canBeMadePrivate()
FieldOptimizationInfocanBeMadePrivate in class FieldOptimizationInfopublic void generalizeReferencedClass(proguard.evaluation.value.ReferenceValue referencedClass)
public proguard.evaluation.value.ReferenceValue getReferencedClass()
FieldOptimizationInfogetReferencedClass in class FieldOptimizationInfopublic void resetValue(proguard.classfile.Clazz clazz,
proguard.classfile.Field field)
public void generalizeValue(proguard.evaluation.value.Value value)
public void visitAnyAttribute(proguard.classfile.Clazz clazz,
proguard.classfile.attribute.Attribute attribute)
visitAnyAttribute in interface proguard.classfile.attribute.visitor.AttributeVisitorpublic void visitConstantValueAttribute(proguard.classfile.Clazz clazz,
proguard.classfile.Field field,
proguard.classfile.attribute.ConstantValueAttribute constantValueAttribute)
visitConstantValueAttribute in interface proguard.classfile.attribute.visitor.AttributeVisitorpublic static void setProgramFieldOptimizationInfo(proguard.classfile.Clazz clazz,
proguard.classfile.Field field,
boolean optimizeConservatively)
public static ProgramFieldOptimizationInfo getProgramFieldOptimizationInfo(proguard.classfile.Field field)