Package proguard.classfile.attribute
Class Attribute
- java.lang.Object
-
- proguard.util.SimpleProcessable
-
- proguard.classfile.attribute.Attribute
-
- All Implemented Interfaces:
java.io.Serializable
,Processable
- Direct Known Subclasses:
AnnotationDefaultAttribute
,AnnotationsAttribute
,BootstrapMethodsAttribute
,CodeAttribute
,ConstantValueAttribute
,DeprecatedAttribute
,EnclosingMethodAttribute
,ExceptionsAttribute
,InnerClassesAttribute
,LineNumberTableAttribute
,LocalVariableTableAttribute
,LocalVariableTypeTableAttribute
,MethodParametersAttribute
,ModuleAttribute
,ModuleMainClassAttribute
,ModulePackagesAttribute
,NestHostAttribute
,NestMembersAttribute
,ParameterAnnotationsAttribute
,PermittedSubclassesAttribute
,RecordAttribute
,SignatureAttribute
,SourceDebugExtensionAttribute
,SourceDirAttribute
,SourceFileAttribute
,StackMapAttribute
,StackMapTableAttribute
,SyntheticAttribute
,UnknownAttribute
public abstract class Attribute extends SimpleProcessable
This abstract class represents an attribute that is attached to a class, a class member, or a code attribute. Specific types of attributes are subclassed from it.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
ANNOTATION_DEFAULT
static java.lang.String
BOOTSTRAP_METHODS
static java.lang.String
CHARACTER_RANGE_TABLE
static java.lang.String
CODE
static java.lang.String
COMPILATION_I_D
static java.lang.String
CONSTANT_VALUE
static java.lang.String
DEPRECATED
static java.lang.String
ENCLOSING_METHOD
static java.lang.String
EXCEPTIONS
static java.lang.String
INNER_CLASSES
static java.lang.String
LINE_NUMBER_TABLE
static java.lang.String
LOCAL_VARIABLE_TABLE
static java.lang.String
LOCAL_VARIABLE_TYPE_TABLE
static java.lang.String
METHOD_PARAMETERS
static java.lang.String
MODULE
static java.lang.String
MODULE_MAIN_CLASS
static java.lang.String
MODULE_PACKAGES
static java.lang.String
NEST_HOST
static java.lang.String
NEST_MEMBERS
static java.lang.String
PERMITTED_SUBCLASSES
static java.lang.String
RECORD
static java.lang.String
RUNTIME_INVISIBLE_ANNOTATIONS
static java.lang.String
RUNTIME_INVISIBLE_PARAMETER_ANNOTATIONS
static java.lang.String
RUNTIME_INVISIBLE_TYPE_ANNOTATIONS
static java.lang.String
RUNTIME_VISIBLE_ANNOTATIONS
static java.lang.String
RUNTIME_VISIBLE_PARAMETER_ANNOTATIONS
static java.lang.String
RUNTIME_VISIBLE_TYPE_ANNOTATIONS
static java.lang.String
SIGNATURE
static java.lang.String
SOURCE_DEBUG_EXTENSION
static java.lang.String
SOURCE_DIR
static java.lang.String
SOURCE_FILE
static java.lang.String
SOURCE_I_D
static java.lang.String
STACK_MAP
static java.lang.String
STACK_MAP_TABLE
static java.lang.String
SYNTHETIC
int
u2attributeNameIndex
-
Fields inherited from class proguard.util.SimpleProcessable
processingFlags, processingInfo
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
accept(Clazz clazz, RecordComponentInfo recordComponentInfo, AttributeVisitor attributeVisitor)
Accepts the given visitor in the context of the given record component.void
accept(Clazz clazz, AttributeVisitor attributeVisitor)
Accepts the given visitor.void
accept(Clazz clazz, Field field, AttributeVisitor attributeVisitor)
Accepts the given visitor in the context of the given field.void
accept(Clazz clazz, Method method, CodeAttribute codeAttribute, AttributeVisitor attributeVisitor)
Accepts the given visitor in the context of the given code attribute.void
accept(Clazz clazz, Method method, AttributeVisitor attributeVisitor)
Accepts the given visitor in the context of the given method.java.lang.String
getAttributeName(Clazz clazz)
Returns the String name of the attribute.-
Methods inherited from class proguard.util.SimpleProcessable
addProcessingFlags, getProcessingFlags, getProcessingInfo, hasProcessingFlags, removeProcessingFlags, setProcessingFlags, setProcessingInfo
-
-
-
-
Field Detail
-
BOOTSTRAP_METHODS
public static final java.lang.String BOOTSTRAP_METHODS
- See Also:
- Constant Field Values
-
SOURCE_FILE
public static final java.lang.String SOURCE_FILE
- See Also:
- Constant Field Values
-
SOURCE_DIR
public static final java.lang.String SOURCE_DIR
- See Also:
- Constant Field Values
-
RECORD
public static final java.lang.String RECORD
- See Also:
- Constant Field Values
-
INNER_CLASSES
public static final java.lang.String INNER_CLASSES
- See Also:
- Constant Field Values
-
ENCLOSING_METHOD
public static final java.lang.String ENCLOSING_METHOD
- See Also:
- Constant Field Values
-
NEST_HOST
public static final java.lang.String NEST_HOST
- See Also:
- Constant Field Values
-
NEST_MEMBERS
public static final java.lang.String NEST_MEMBERS
- See Also:
- Constant Field Values
-
PERMITTED_SUBCLASSES
public static final java.lang.String PERMITTED_SUBCLASSES
- See Also:
- Constant Field Values
-
DEPRECATED
public static final java.lang.String DEPRECATED
- See Also:
- Constant Field Values
-
SYNTHETIC
public static final java.lang.String SYNTHETIC
- See Also:
- Constant Field Values
-
SIGNATURE
public static final java.lang.String SIGNATURE
- See Also:
- Constant Field Values
-
CONSTANT_VALUE
public static final java.lang.String CONSTANT_VALUE
- See Also:
- Constant Field Values
-
METHOD_PARAMETERS
public static final java.lang.String METHOD_PARAMETERS
- See Also:
- Constant Field Values
-
EXCEPTIONS
public static final java.lang.String EXCEPTIONS
- See Also:
- Constant Field Values
-
CODE
public static final java.lang.String CODE
- See Also:
- Constant Field Values
-
STACK_MAP
public static final java.lang.String STACK_MAP
- See Also:
- Constant Field Values
-
STACK_MAP_TABLE
public static final java.lang.String STACK_MAP_TABLE
- See Also:
- Constant Field Values
-
LINE_NUMBER_TABLE
public static final java.lang.String LINE_NUMBER_TABLE
- See Also:
- Constant Field Values
-
LOCAL_VARIABLE_TABLE
public static final java.lang.String LOCAL_VARIABLE_TABLE
- See Also:
- Constant Field Values
-
LOCAL_VARIABLE_TYPE_TABLE
public static final java.lang.String LOCAL_VARIABLE_TYPE_TABLE
- See Also:
- Constant Field Values
-
RUNTIME_VISIBLE_ANNOTATIONS
public static final java.lang.String RUNTIME_VISIBLE_ANNOTATIONS
- See Also:
- Constant Field Values
-
RUNTIME_INVISIBLE_ANNOTATIONS
public static final java.lang.String RUNTIME_INVISIBLE_ANNOTATIONS
- See Also:
- Constant Field Values
-
RUNTIME_VISIBLE_PARAMETER_ANNOTATIONS
public static final java.lang.String RUNTIME_VISIBLE_PARAMETER_ANNOTATIONS
- See Also:
- Constant Field Values
-
RUNTIME_INVISIBLE_PARAMETER_ANNOTATIONS
public static final java.lang.String RUNTIME_INVISIBLE_PARAMETER_ANNOTATIONS
- See Also:
- Constant Field Values
-
RUNTIME_VISIBLE_TYPE_ANNOTATIONS
public static final java.lang.String RUNTIME_VISIBLE_TYPE_ANNOTATIONS
- See Also:
- Constant Field Values
-
RUNTIME_INVISIBLE_TYPE_ANNOTATIONS
public static final java.lang.String RUNTIME_INVISIBLE_TYPE_ANNOTATIONS
- See Also:
- Constant Field Values
-
ANNOTATION_DEFAULT
public static final java.lang.String ANNOTATION_DEFAULT
- See Also:
- Constant Field Values
-
MODULE
public static final java.lang.String MODULE
- See Also:
- Constant Field Values
-
MODULE_MAIN_CLASS
public static final java.lang.String MODULE_MAIN_CLASS
- See Also:
- Constant Field Values
-
MODULE_PACKAGES
public static final java.lang.String MODULE_PACKAGES
- See Also:
- Constant Field Values
-
SOURCE_DEBUG_EXTENSION
public static final java.lang.String SOURCE_DEBUG_EXTENSION
- See Also:
- Constant Field Values
-
CHARACTER_RANGE_TABLE
public static final java.lang.String CHARACTER_RANGE_TABLE
- See Also:
- Constant Field Values
-
COMPILATION_I_D
public static final java.lang.String COMPILATION_I_D
- See Also:
- Constant Field Values
-
SOURCE_I_D
public static final java.lang.String SOURCE_I_D
- See Also:
- Constant Field Values
-
u2attributeNameIndex
public int u2attributeNameIndex
-
-
Method Detail
-
getAttributeName
public java.lang.String getAttributeName(Clazz clazz)
Returns the String name of the attribute.
-
accept
public void accept(Clazz clazz, AttributeVisitor attributeVisitor)
Accepts the given visitor.
-
accept
public void accept(Clazz clazz, Field field, AttributeVisitor attributeVisitor)
Accepts the given visitor in the context of the given field.
-
accept
public void accept(Clazz clazz, Method method, AttributeVisitor attributeVisitor)
Accepts the given visitor in the context of the given method.
-
accept
public void accept(Clazz clazz, Method method, CodeAttribute codeAttribute, AttributeVisitor attributeVisitor)
Accepts the given visitor in the context of the given code attribute.
-
accept
public void accept(Clazz clazz, RecordComponentInfo recordComponentInfo, AttributeVisitor attributeVisitor)
Accepts the given visitor in the context of the given record component.
-
-