Enum Class ClassFile.AttributesProcessingOption
java.lang.Object
java.lang.Enum<ClassFile.AttributesProcessingOption>
java.lang.classfile.ClassFile.AttributesProcessingOption
- All Implemented Interfaces:
Serializable,ClassFile.Option,Comparable<ClassFile.AttributesProcessingOption>,Constable
- Enclosing interface:
ClassFile
public static enum ClassFile.AttributesProcessingOption
extends Enum<ClassFile.AttributesProcessingOption>
implements ClassFile.Option
The option describing whether to retain or discard attributes that cannot
verify their correctness after a transformation. The default is
PASS_ALL_ATTRIBUTES to retain all attributes as-is.
Many attributes only depend on data managed by the Class-File API, such
as constant pool entries or labels into the code array. If they
change, the Class-File API knows their updated values and can write a
correct version by expanding the structures and recomputing the updated
indexes, known as "explosion". However, some attributes, such as type
annotations, depend on arbitrary data that may be modified during
transformations but the Class-File API does not track, such as index to
an entry in the interfaces of a
ClassFile structure. As a result, the Class-File API cannot
verify the correctness of such information.
- Since:
- 24
- See Also:
-
Nested Class Summary
Nested classes/interfaces declared in class java.lang.Enum
Enum.EnumDesc<E extends Enum<E>> -
Enum Constant Summary
Enum ConstantsEnum ConstantDescriptionDrop attributes withAttributeMapper.AttributeStability.UNKNOWNdata dependency during transformation.Drop attributes withAttributeMapper.AttributeStability.UNSTABLEor higher data dependency during transformation.Retain all original attributes during transformation. -
Method Summary
Modifier and TypeMethodDescriptionReturns the enum constant of this class with the specified name.static ClassFile.AttributesProcessingOption[]values()Returns an array containing the constants of this enum class, in the order they are declared.
-
Enum Constant Details
-
PASS_ALL_ATTRIBUTES
Retain all original attributes during transformation. -
DROP_UNKNOWN_ATTRIBUTES
Drop attributes withAttributeMapper.AttributeStability.UNKNOWNdata dependency during transformation. -
DROP_UNSTABLE_ATTRIBUTES
Drop attributes withAttributeMapper.AttributeStability.UNSTABLEor higher data dependency during transformation.
-
-
Method Details
-
values
Returns an array containing the constants of this enum class, in the order they are declared.- Returns:
- an array containing the constants of this enum class, in the order they are declared
-
valueOf
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)- Parameters:
name- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException- if this enum class has no constant with the specified nameNullPointerException- if the argument is null
-