Interface SignatureAttribute
- All Superinterfaces:
Attribute<SignatureAttribute>, ClassElement, ClassFileElement, FieldElement, MethodElement
public sealed interface SignatureAttribute
extends Attribute<SignatureAttribute>, ClassElement, MethodElement, FieldElement
Models the
Signature
attribute (JVMS 4.7.9), which indicates the generic signature of this structure.
This attribute appears on classes, fields, methods, and record components, and does not permit multiple instances in one structure. It has a data dependency on the constant pool.
The attribute was introduced in the Java SE Platform version 5.0, major version 49.
- See Java Virtual Machine Specification:
-
4.7.9 The
Signature
Attribute - Since:
- 24
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptiondefault ClassSignature
Parses the signature string as a class signature.default MethodSignature
Parse the signature string as a method signature.default Signature
Parses the signature string as a Java type signature.static SignatureAttribute
of
(ClassSignature classSignature) Returns aSignature
attribute for a class.static SignatureAttribute
Returns aSignature
attribute.static SignatureAttribute
of
(MethodSignature methodSignature) Returns aSignature
attribute for a method.static SignatureAttribute
Returns aSignature
attribute for a field or a record component.Returns the signature string for the class, method, field, or record component.Methods inherited from interface Attribute
attributeMapper, attributeName
-
Method Details
-
signature
Utf8Entry signature()Returns the signature string for the class, method, field, or record component. It is a class signature string if this attribute is on a class, a method signature string if this attribute is on a method, or a field signature string if this attribute is on a field or a record component.- Returns:
- the signature string for the class, method, field, or record component
- See Java Virtual Machine Specification:
-
4.7.9.1 Signatures
-
asClassSignature
Parses the signature string as a class signature.- Returns:
- the class signature
- Throws:
IllegalArgumentException
- if the signature string is not a valid class signature string
-
asMethodSignature
Parse the signature string as a method signature.- Returns:
- the method signature
- Throws:
IllegalArgumentException
- if the signature string is not a valid method signature string
-
asTypeSignature
Parses the signature string as a Java type signature.- Returns:
- the type signature
- Throws:
IllegalArgumentException
- if the signature string is not a valid Java type signature string- See Also:
-
of
Returns aSignature
attribute for a class.- Parameters:
classSignature
- the class signature- Returns:
- a
Signature
attribute for a class
-
of
Returns aSignature
attribute for a method.- Parameters:
methodSignature
- the method signature- Returns:
- a
Signature
attribute for a method
-
of
Returns aSignature
attribute for a field or a record component.- Parameters:
signature
- the Java type signature- Returns:
- a
Signature
attribute for a field or a record component
-
of
Returns aSignature
attribute.- Parameters:
signature
- the signature string- Returns:
- a
Signature
attribute
-