Module java.base

Interface ModuleTargetAttribute

All Superinterfaces:
AttributePREVIEW<ModuleTargetAttributePREVIEW>, ClassElementPREVIEW, ClassFileElementPREVIEW, WritableElementPREVIEW<ModuleTargetAttributePREVIEW>

public sealed interface ModuleTargetAttribute extends AttributePREVIEW<ModuleTargetAttributePREVIEW>, ClassElementPREVIEW
ModuleTargetAttribute is a preview API of the Java platform.
Programs can only use ModuleTargetAttribute 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 ModuleTarget attribute, which can appear on classes that represent module descriptors. This is a JDK-specific attribute, which captures constraints on the target platform. Delivered as a ClassElementPREVIEW when traversing the elements of a ClassModelPREVIEW.

The specification of the ModuleTarget attribute is:

 TargetPlatform_attribute {
   // index to CONSTANT_utf8_info structure in constant pool representing
   // the string "ModuleTarget"
   u2 attribute_name_index;
   u4 attribute_length;

   // index to CONSTANT_utf8_info structure with the target platform
   u2 target_platform_index;

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.