# Enum Class TypeAnnotation.TypePathComponent.Kind

java.lang.Object
java.lang.Enum<TypeAnnotation.TypePathComponent.Kind>
java.lang.classfile.TypeAnnotation.TypePathComponent.Kind

All Implemented Interfaces:
  `Serializable, Comparable<TypeAnnotation.TypePathComponent.Kind>, Constable`

Enclosing interface:
  `TypeAnnotation.TypePathComponent`

public static enum TypeAnnotation.TypePathComponent.Kind extends Enum<TypeAnnotation.TypePathComponent.Kind>
Type path kind, as defined in JVMS 4.7.20.2

Since:
  24

## Nested Class Summary

### Nested classes/interfaces declared in class Enum

`Enum.EnumDesc<E>`

## Enum Constant Summary

Enum Constants
Enum Constant
Description
`ARRAY`
Annotation is deeper in an array type
`INNER_TYPE`
Annotation is deeper in a nested type
`TYPE_ARGUMENT`
Annotation is on a type argument of a parameterized type
`WILDCARD`
Annotation is on the bound of a wildcard type argument of a parameterized type

## Method Summary

Modifier and Type
Method
Description
`int`
`tag()`
Returns the type path kind value.
`static TypeAnnotation.TypePathComponent.Kind`
`valueOf(String name)`
Returns the enum constant of this class with the specified name.
`static TypeAnnotation.TypePathComponent.Kind[]`
`values()`
Returns an array containing the constants of this enum class, in the order they are declared.

### Methods declared in class Enum

`clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

### Methods declared in class Object

`getClass, notify, notifyAll, wait, wait, wait`

## Enum Constant Details

### ARRAY

public static final TypeAnnotation.TypePathComponent.Kind ARRAY
Annotation is deeper in an array type

### INNER_TYPE

public static final TypeAnnotation.TypePathComponent.Kind INNER_TYPE
Annotation is deeper in a nested type

### WILDCARD

public static final TypeAnnotation.TypePathComponent.Kind WILDCARD
Annotation is on the bound of a wildcard type argument of a parameterized type

### TYPE_ARGUMENT

public static final TypeAnnotation.TypePathComponent.Kind TYPE_ARGUMENT
Annotation is on a type argument of a parameterized type

## Method Details

### values

public static TypeAnnotation.TypePathComponent.Kind[] 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

public static TypeAnnotation.TypePathComponent.Kind valueOf(String name)
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 name
  `NullPointerException` - if the argument is null

### tag

public int tag()
Returns the type path kind value.

Returns:
  the type path kind value