Interface TypeAnnotation.TypePathComponent
- Enclosing interface:
TypeAnnotation
public static sealed interface TypeAnnotation.TypePathComponent
JVMS: Type_path structure identifies which part of the type is annotated, as defined in JVMS §4.7.20.2
- Since:
- 24
- See Also:
Nested Class Summary
| Modifier and Type | Interface | Description |
|---|---|---|
static enum |
TypeAnnotation.TypePathComponent.Kind |
Type path kind, as defined in JVMS §4.7.20.2
|
Field Summary
| Modifier and Type | Field | Description |
|---|---|---|
static final TypeAnnotation.TypePathComponent |
ARRAY |
static instance for annotation is deeper in an array type |
static final TypeAnnotation.TypePathComponent |
INNER_TYPE |
static instance for annotation is deeper in a nested type |
static final TypeAnnotation.TypePathComponent |
WILDCARD |
static instance for annotation is on the bound of a wildcard type argument of a parameterized type |
Method Summary
| Modifier and Type | Method | Description |
|---|---|---|
static TypeAnnotation.TypePathComponent |
of |
Returns type path component of an annotation. |
int |
typeArgumentIndex() |
JVMS: type_argument_index If the value of the type_path_kind item is 0, 1, or 2, then the value of the type_argument_index item is 0. |
TypeAnnotation.TypePathComponent.Kind |
typePathKind() |
The type path kind items from JVMS Table 4.7.20.2-A. |
Field Details
ARRAY
static final TypeAnnotation.TypePathComponent ARRAY
static instance for annotation is deeper in an array type
INNER_TYPE
static final TypeAnnotation.TypePathComponent INNER_TYPE
static instance for annotation is deeper in a nested type
WILDCARD
static final TypeAnnotation.TypePathComponent WILDCARD
static instance for annotation is on the bound of a wildcard type argument of a parameterized type
Method Details
typePathKind
TypeAnnotation.TypePathComponent.Kind typePathKind()
The type path kind items from JVMS Table 4.7.20.2-A.
- Returns:
- the kind of path element
typeArgumentIndex
int typeArgumentIndex()
JVMS: type_argument_index If the value of the type_path_kind item is 0, 1, or 2, then the value of the type_argument_index item is 0. If the value of the type_path_kind item is 3, then the value of the type_argument_index item specifies which type argument of a parameterized type is annotated, where 0 indicates the first type argument of a parameterized type.
- Returns:
- the index within the type component
of
static TypeAnnotation.TypePathComponent of(TypeAnnotation.TypePathComponent.Kind typePathKind, int typeArgumentIndex)
Returns type path component of an annotation.
- Parameters:
-
typePathKind- the kind of path element -
typeArgumentIndex- the type argument index - Returns:
- type path component of an annotation
- Throws:
-
IllegalArgumentException- iftypeArgumentIndexis notu1
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.