Interface AnnotationValue.OfConstant
- All Superinterfaces:
AnnotationValue
- All Known Subinterfaces:
AnnotationValue.OfBoolean
,AnnotationValue.OfByte
,AnnotationValue.OfChar
,AnnotationValue.OfDouble
,AnnotationValue.OfFloat
,AnnotationValue.OfInt
,AnnotationValue.OfLong
,AnnotationValue.OfShort
,AnnotationValue.OfString
- Enclosing interface:
AnnotationValue
public static sealed interface AnnotationValue.OfConstant
extends AnnotationValue
permits AnnotationValue.OfString, AnnotationValue.OfDouble, AnnotationValue.OfFloat, AnnotationValue.OfLong, AnnotationValue.OfInt, AnnotationValue.OfShort, AnnotationValue.OfChar, AnnotationValue.OfByte, AnnotationValue.OfBoolean
Models a constant value of an element-value pair.
-
Nested Class Summary
Nested classes/interfaces declared in interface java.lang.classfile.AnnotationValue
AnnotationValue.OfAnnotation, AnnotationValue.OfArray, AnnotationValue.OfBoolean, AnnotationValue.OfByte, AnnotationValue.OfChar, AnnotationValue.OfClass, AnnotationValue.OfConstant, AnnotationValue.OfDouble, AnnotationValue.OfEnum, AnnotationValue.OfFloat, AnnotationValue.OfInt, AnnotationValue.OfLong, AnnotationValue.OfShort, AnnotationValue.OfString
-
Field Summary
Fields declared in interface java.lang.classfile.AnnotationValue
TAG_ANNOTATION, TAG_ARRAY, TAG_BOOLEAN, TAG_BYTE, TAG_CHAR, TAG_CLASS, TAG_DOUBLE, TAG_ENUM, TAG_FLOAT, TAG_INT, TAG_LONG, TAG_SHORT, TAG_STRING
-
Method Summary
Modifier and TypeMethodDescriptionconstant()
Returns the constant pool entry backing this constant element.Returns the resolved live constant value, as an object.Methods declared in interface java.lang.classfile.AnnotationValue
tag
-
Method Details
-
constant
AnnotationConstantValueEntry constant()Returns the constant pool entry backing this constant element.- API Note:
- Different types of constant values may share the same type of entry
because they have the same computational type.
For example,
AnnotationValue.OfInt
andAnnotationValue.OfChar
are both backed byIntegerEntry
. UseresolvedValue()
for a value of accurate type. - Returns:
- the constant pool entry backing this constant element
-
resolvedValue
Constable resolvedValue()Returns the resolved live constant value, as an object. The type of the returned value may be a wrapper class orString
.- API Note:
- The returned object, despite being
Constable
, may not describe the right constant for encoding the annotation value in a class file. For example,Character
returned byAnnotationValue.OfChar
describes itself as aDynamicConstantPoolEntry
, but it is actually backed byIntegerEntry
in annotation format. Useconstant()
for a correct constant pool representation. - Returns:
- the resolved live constant value, as an object
-