Interface NestMembersAttribute

All Superinterfaces:
Attribute<NestMembersAttribute>, ClassElement, ClassFileElement

public sealed interface NestMembersAttribute extends Attribute<NestMembersAttribute>, ClassElement
Models the NestMembers attribute (JVMS 4.7.29), which can appear on classes to indicate that this class is the host of a nest. Delivered as a ClassElement when traversing the elements of a ClassModel.

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:
24
  • Method Details

    • nestMembers

      List<ClassEntry> 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 NestMembersAttribute of(List<ClassEntry> nestMembers)
      Returns a NestMembers attribute.
      Parameters:
      nestMembers - the member classes of the nest
      Returns:
      a NestMembers attribute
    • of

      static NestMembersAttribute of(ClassEntry... nestMembers)
      Returns a NestMembers attribute.
      Parameters:
      nestMembers - the member classes of the nest
      Returns:
      a NestMembers attribute
    • ofSymbols

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

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