Package Summary Overview Summary

Module java.base
Package java.lang.classfile.attributePREVIEW

# Interface NestMembersAttribute

All Superinterfaces:
  `AttributePREVIEW<NestMembersAttributePREVIEW>`, `ClassElementPREVIEW`, `ClassFileElementPREVIEW`, `WritableElementPREVIEW<NestMembersAttributePREVIEW>`

public sealed interface NestMembersAttribute extends AttributePREVIEW<NestMembersAttributePREVIEW>, ClassElementPREVIEW
`NestMembersAttribute` is a preview API of the Java platform.
Programs can only use `NestMembersAttribute` when preview features are enabled.
Preview features may be removed in a future release, or upgraded to permanent features of the Java platform.
Models the `NestMembers` attribute 4.7.29, which can appear on classes to indicate that this class is the host of a nest. Delivered as a `ClassElement`PREVIEW when traversing the elements of a `ClassModel`PREVIEW.

The attribute does not permit multiple instances in a given location. Subsequent occurrence of the attribute takes precedence during the attributed element build or transformation.

The attribute was introduced in the Java SE Platform version 11.

Since:
  22

- ## Method Summary

  Modifier and Type
  Method
  Description
  `List <ClassEntryPREVIEW>`
  `nestMembers()`
  Returns the classes belonging to the nest hosted by this class.
  `static NestMembersAttributePREVIEW`
  `of (ClassEntryPREVIEW... nestMembers)`
  Returns a `NestMembers` attribute.
  `static NestMembersAttributePREVIEW`
  `of (List<ClassEntryPREVIEW> nestMembers)`
  Returns a `NestMembers` attribute.
  `static NestMembersAttributePREVIEW`
  `ofSymbols (ClassDesc... nestMembers)`
  Returns a `NestMembers` attribute.
  `static NestMembersAttributePREVIEW`
  `ofSymbols (List<ClassDesc> nestMembers)`
  Returns a `NestMembers` attribute.

  ### Methods declared in interface java.lang.classfile.AttributePREVIEW

  `attributeMapper, attributeName`

  ### Methods declared in interface java.lang.classfile.WritableElementPREVIEW

  `writeTo`

- ## Method Details

  - ### nestMembers

    List<ClassEntryPREVIEW> nestMembers()
    Returns the classes belonging to the nest hosted by this class.
    Returns:
      the classes belonging to the nest hosted by this class

  - ### of

    static NestMembersAttributePREVIEW of (List<ClassEntryPREVIEW> nestMembers)
    Returns a `NestMembers` attribute.
    Parameters:
      `nestMembers` - the member classes of the nest
    Returns:
      a `NestMembers` attribute

  - ### of

    static NestMembersAttributePREVIEW of (ClassEntryPREVIEW... nestMembers)
    Returns a `NestMembers` attribute.
    Parameters:
      `nestMembers` - the member classes of the nest
    Returns:
      a `NestMembers` attribute

  - ### ofSymbols

    static NestMembersAttributePREVIEW ofSymbols (List<ClassDesc> nestMembers)
    Returns a `NestMembers` attribute.
    Parameters:
      `nestMembers` - the member classes of the nest
    Returns:
      a `NestMembers` attribute

  - ### ofSymbols

    static NestMembersAttributePREVIEW ofSymbols (ClassDesc... nestMembers)
    Returns a `NestMembers` attribute.
    Parameters:
      `nestMembers` - the member classes of the nest
    Returns:
      a `NestMembers` attribute