public class ProgramClassOptimizationInfo extends ClassOptimizationInfo
hasNoSideEffects| Constructor and Description |
|---|
ProgramClassOptimizationInfo() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
containsConstructors() |
boolean |
containsPackageVisibleMembers()
Returns whether the class contains any package visible class members.
|
static ProgramClassOptimizationInfo |
getProgramClassOptimizationInfo(proguard.classfile.Clazz clazz)
Returns the ProgramClassOptimizationInfo instance from the given class.
|
proguard.classfile.Clazz |
getTargetClass()
Returns the class into which this class can be merged.
|
proguard.classfile.Clazz |
getWrappedClass()
Returns the class for which this class is a simple wrapper without any
additional functionality, or null otherwise.
|
boolean |
hasSideEffects()
Returns whether loading the class has any side effects.
|
boolean |
invokesPackageVisibleMembers()
Returns whether any code in the class accesses any package visible
class members.
|
boolean |
isCaught()
Returns whether the class is a Throwable that is caught in an exception
handler in the known code.
|
boolean |
isDotClassed()
Returns whether the class is loaded with an 'ldc' instruction (a .class
construct in Java) in the known code.
|
boolean |
isEscaping()
Returns whether instances of the class are ever escaping to the heap.
|
boolean |
isInstanceofed()
Returns whether the class is part of an 'instanceof' instruction in the
known code.
|
boolean |
isInstantiated()
Returns whether the class is instantiated in the known code.
|
boolean |
isKept()
Returns whether the class is kept.
|
boolean |
isSimpleEnum()
Returns whether the class is an enum type that can be simplified to a
primitive integer.
|
boolean |
mayBeMerged()
Returns whether the class may be merged with other classes.
|
void |
merge(ClassOptimizationInfo other)
Merges in the given information of a class that is merged.
|
void |
setCaught()
Specifies that the class is a Throwable that is caught in an exception
handler in the known code.
|
void |
setContainsConstructors() |
void |
setContainsPackageVisibleMembers()
Specifies that the class contains package visible class members.
|
void |
setDotClassed()
Specifies that the class is loaded with an 'ldc' instruction (a .class
construct in Java) in the known code.
|
void |
setEscaping()
Specifies that instances of the class are escaping to the heap.
|
void |
setInstanceofed()
Specifies that the class is part of an 'instanceof' instruction in the
known code.
|
void |
setInstantiated()
Specifies that the class is instantiated in the known code.
|
void |
setInvokesPackageVisibleMembers()
Specifies that code in the class accesses package visible class members.
|
void |
setMayNotBeMerged()
Specifies that the class may be not merged with other classes.
|
static void |
setProgramClassOptimizationInfo(proguard.classfile.Clazz clazz)
Creates and sets a ProgramClassOptimizationInfo instance on the given class.
|
void |
setSideEffects()
Specifies that loading the class has side effects.
|
void |
setSimpleEnum(boolean simple)
Specifies whether the class is an enum type that can be simplified to a
primitive integer.
|
void |
setTargetClass(proguard.classfile.Clazz targetClass)
Specifies the class into which this class can be merged.
|
void |
setWrappedClass(proguard.classfile.Clazz wrappedClass)
Specifies the class for which this class is a simple wrapper without any
additional functionality.
|
getClassOptimizationInfo, hasNoSideEffects, setClassOptimizationInfo, setNoSideEffectspublic boolean isKept()
ClassOptimizationInfoisKept in class ClassOptimizationInfopublic void setContainsConstructors()
public boolean containsConstructors()
containsConstructors in class ClassOptimizationInfopublic void setInstantiated()
public boolean isInstantiated()
ClassOptimizationInfoisInstantiated in class ClassOptimizationInfopublic void setInstanceofed()
public boolean isInstanceofed()
ClassOptimizationInfoisInstanceofed in class ClassOptimizationInfopublic void setDotClassed()
public boolean isDotClassed()
ClassOptimizationInfoisDotClassed in class ClassOptimizationInfopublic void setCaught()
public boolean isCaught()
ClassOptimizationInfoisCaught in class ClassOptimizationInfopublic void setSimpleEnum(boolean simple)
public boolean isSimpleEnum()
ClassOptimizationInfoisSimpleEnum in class ClassOptimizationInfopublic void setEscaping()
public boolean isEscaping()
ClassOptimizationInfoisEscaping in class ClassOptimizationInfopublic void setSideEffects()
public boolean hasSideEffects()
ClassOptimizationInfohasSideEffects in class ClassOptimizationInfopublic void setContainsPackageVisibleMembers()
public boolean containsPackageVisibleMembers()
ClassOptimizationInfocontainsPackageVisibleMembers in class ClassOptimizationInfopublic void setInvokesPackageVisibleMembers()
public boolean invokesPackageVisibleMembers()
ClassOptimizationInfoinvokesPackageVisibleMembers in class ClassOptimizationInfopublic void setMayNotBeMerged()
public boolean mayBeMerged()
ClassOptimizationInfomayBeMerged in class ClassOptimizationInfopublic void setWrappedClass(proguard.classfile.Clazz wrappedClass)
public proguard.classfile.Clazz getWrappedClass()
ClassOptimizationInfogetWrappedClass in class ClassOptimizationInfopublic void setTargetClass(proguard.classfile.Clazz targetClass)
public proguard.classfile.Clazz getTargetClass()
ClassOptimizationInfogetTargetClass in class ClassOptimizationInfopublic void merge(ClassOptimizationInfo other)
public static void setProgramClassOptimizationInfo(proguard.classfile.Clazz clazz)
public static ProgramClassOptimizationInfo getProgramClassOptimizationInfo(proguard.classfile.Clazz clazz)