Package org.springframework.aot.hint

# Enum Class MemberCategory

java.lang.Object
java.lang.Enum<MemberCategory>
org.springframework.aot.hint.MemberCategory

All Implemented Interfaces:
  `Serializable`, `Comparable<MemberCategory>`, `Constable`

public enum MemberCategory extends Enum<MemberCategory>
Predefined `Member` categories.

Since:
  6.0
Author:
  Andy Clement, Sebastien Deleuze, Stephane Nicoll

## Nested Class Summary

## Nested classes/interfaces inherited from class java.lang.Enum

`Enum.EnumDesc<E extends Enum<E>>`

## Enum Constant Summary

Enum Constants
Enum Constant
Description
`DECLARED_CLASSES`
A category that represents all inner classes.
`DECLARED_FIELDS`
A category that represents reflective field access on declared fields: all fields defined by the class but not inherited fields.
`INTROSPECT_DECLARED_CONSTRUCTORS`
A category that defines all constructors can be introspected but not invoked.
`INTROSPECT_DECLARED_METHODS`
A category that defines all methods, excluding inherited ones, can be introspected but not invoked.
`INTROSPECT_PUBLIC_CONSTRUCTORS`
A category that defines public constructors can be introspected but not invoked.
`INTROSPECT_PUBLIC_METHODS`
A category that defines public methods, including inherited ones, can be introspected but not invoked.
`INVOKE_DECLARED_CONSTRUCTORS`
A category that defines all constructors can be invoked.
`INVOKE_DECLARED_METHODS`
A category that defines all methods, excluding inherited ones, can be invoked.
`INVOKE_PUBLIC_CONSTRUCTORS`
A category that defines public constructors can be invoked.
`INVOKE_PUBLIC_METHODS`
A category that defines public methods, including inherited ones, can be invoked.
`PUBLIC_CLASSES`
A category that represents public inner classes.
`PUBLIC_FIELDS`
A category that represents reflective field access on public fields.
`UNSAFE_ALLOCATED`
A category that represents the need for `unsafe allocation` for this type.

## Method Summary

Modifier and Type
Method
Description
`static MemberCategory`
`valueOf(String name)`
Returns the enum constant of this class with the specified name.
`static MemberCategory[]`
`values()`
Returns an array containing the constants of this enum class, in the order they are declared.

### Methods inherited from class java.lang.Enum

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

### Methods inherited from class java.lang.Object

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

## Enum Constant Details

### PUBLIC_FIELDS

public static final MemberCategory PUBLIC_FIELDS
A category that represents reflective field access on public fields.

See Also:
  - `Field.get(Object)`
  - `Field.set(Object, Object)`

### DECLARED_FIELDS

public static final MemberCategory DECLARED_FIELDS
A category that represents reflective field access on declared fields: all fields defined by the class but not inherited fields.

See Also:
  - `Class.getDeclaredFields()`
  - `Field.get(Object)`
  - `Field.set(Object, Object)`

### INTROSPECT_PUBLIC_CONSTRUCTORS

public static final MemberCategory INTROSPECT_PUBLIC_CONSTRUCTORS
A category that defines public constructors can be introspected but not invoked.

See Also:
  - `Class.getConstructors()`
  - `ExecutableMode.INTROSPECT`

### INTROSPECT_DECLARED_CONSTRUCTORS

public static final MemberCategory INTROSPECT_DECLARED_CONSTRUCTORS
A category that defines all constructors can be introspected but not invoked.

See Also:
  - `Class.getDeclaredConstructors()`
  - `ExecutableMode.INTROSPECT`

### INVOKE_PUBLIC_CONSTRUCTORS

public static final MemberCategory INVOKE_PUBLIC_CONSTRUCTORS
A category that defines public constructors can be invoked.

See Also:
  - `Class.getConstructors()`
  - `ExecutableMode.INVOKE`

### INVOKE_DECLARED_CONSTRUCTORS

public static final MemberCategory INVOKE_DECLARED_CONSTRUCTORS
A category that defines all constructors can be invoked.

See Also:
  - `Class.getDeclaredConstructors()`
  - `ExecutableMode.INVOKE`

### INTROSPECT_PUBLIC_METHODS

public static final MemberCategory INTROSPECT_PUBLIC_METHODS
A category that defines public methods, including inherited ones, can be introspected but not invoked.

See Also:
  - `Class.getMethods()`
  - `ExecutableMode.INTROSPECT`

### INTROSPECT_DECLARED_METHODS

public static final MemberCategory INTROSPECT_DECLARED_METHODS
A category that defines all methods, excluding inherited ones, can be introspected but not invoked.

See Also:
  - `Class.getDeclaredMethods()`
  - `ExecutableMode.INTROSPECT`

### INVOKE_PUBLIC_METHODS

public static final MemberCategory INVOKE_PUBLIC_METHODS
A category that defines public methods, including inherited ones, can be invoked.

See Also:
  - `Class.getMethods()`
  - `ExecutableMode.INVOKE`

### INVOKE_DECLARED_METHODS

public static final MemberCategory INVOKE_DECLARED_METHODS
A category that defines all methods, excluding inherited ones, can be invoked.

See Also:
  - `Class.getDeclaredMethods()`
  - `ExecutableMode.INVOKE`

### PUBLIC_CLASSES

public static final MemberCategory PUBLIC_CLASSES
A category that represents public inner classes.

Contrary to other categories, this does not register any particular reflection for inner classes but rather makes sure they are available via a call to `Class.getClasses()`.

### DECLARED_CLASSES

public static final MemberCategory DECLARED_CLASSES
A category that represents all inner classes.

Contrary to other categories, this does not register any particular reflection for inner classes but rather makes sure they are available via a call to `Class.getDeclaredClasses()`.

### UNSAFE_ALLOCATED

public static final MemberCategory UNSAFE_ALLOCATED
A category that represents the need for `unsafe allocation` for this type.

Since:
  6.2.1

## Method Details

### values

public static MemberCategory[] 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 MemberCategory 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