Module java.base
Package java.lang.classfilePREVIEW

# Class CustomAttribute<T extends CustomAttributePREVIEW<T>>

java.lang.Object
jdk.internal.classfile.impl.AbstractElement
jdk.internal.classfile.impl.UnboundAttributePREVIEW<T>
jdk.internal.classfile.impl.UnboundAttribute.CustomAttributePREVIEW<T>
java.lang.classfile.CustomAttribute<T>

Type Parameters:
  `T` - the custom attribute type

All Implemented Interfaces:
  `AttributePREVIEW<T>`, `ClassElementPREVIEW`, `ClassFileElementPREVIEW`, `CodeElementPREVIEW`, `FieldElementPREVIEW`, `MethodElementPREVIEW`, `WritableElementPREVIEW<T>`

public abstract non-sealed class CustomAttribute<T extends CustomAttributePREVIEW<T>> extends jdk.internal.classfile.impl.UnboundAttribute.CustomAttributePREVIEW<T> implements CodeElementPREVIEW, ClassElementPREVIEW, MethodElementPREVIEW, FieldElementPREVIEW
`CustomAttribute` is a preview API of the Java platform.
Programs can only use `CustomAttribute` when preview features are enabled.
Preview features may be removed in a future release, or upgraded to permanent features of the Java platform.
Models a non-standard attribute of a classfile. Clients should extend this class to provide an implementation class for non-standard attributes, and provide an `AttributeMapper`PREVIEW to mediate between the classfile format and the UnboundAttribute.CustomAttributePREVIEW representation.

Since:
  22

- ## Nested Class Summary

  ## Nested classes/interfaces declared in class jdk.internal.classfile.impl.UnboundAttributePREVIEW

  `jdk.internal.classfile.impl.UnboundAttribute.AdHocAttributePREVIEW<T extends AttributePREVIEW<T>>, jdk.internal.classfile.impl.UnboundAttribute.CustomAttributePREVIEW<T extends jdk.internal.classfile.impl.UnboundAttribute.CustomAttributePREVIEW<T>>, jdk.internal.classfile.impl.UnboundAttribute.EmptyBootstrapAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.TypePathComponentImplPREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundAnnotationDefaultAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundCharacterRangeInfoPREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundCharacterRangeTableAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundCompilationIDAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundConstantValueAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundDeprecatedAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundEnclosingMethodAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundExceptionsAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundInnerClassesAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundInnerClassInfoPREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundLineNumberInfoPREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundLineNumberTableAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundLocalVariableInfoPREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundLocalVariableTableAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundLocalVariableTypeInfoPREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundLocalVariableTypeTableAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundMethodParameterInfoPREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundMethodParametersAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundModuleAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundModuleExportInfoPREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundModuleHashesAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundModuleHashInfoPREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundModuleMainClassAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundModuleOpenInfoPREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundModulePackagesAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundModuleProvideInfoPREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundModuleRequiresInfoPREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundModuleResolutionAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundModuleTargetAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundNestHostAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundNestMembersAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundPermittedSubclassesAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundRecordAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundRecordComponentInfoPREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundRuntimeInvisibleAnnotationsAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundRuntimeInvisibleParameterAnnotationsAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundRuntimeInvisibleTypeAnnotationsAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundRuntimeVisibleAnnotationsAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundRuntimeVisibleParameterAnnotationsAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundRuntimeVisibleTypeAnnotationsAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundSignatureAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundSourceDebugExtensionAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundSourceFileAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundSourceIDAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundStackMapTableAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundSyntheticAttributePREVIEW, jdk.internal.classfile.impl.UnboundAttribute.UnboundTypeAnnotationPREVIEW`

- ## Field Summary

  ### Fields declared in class jdk.internal.classfile.impl.UnboundAttributePREVIEW

  `mapper`

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  `protected`
  `CustomAttribute(AttributeMapperPREVIEW<T> mapper)`
  Construct a UnboundAttribute.CustomAttributePREVIEW.

- ## Method Summary

  ### Methods declared in class jdk.internal.classfile.impl.UnboundAttributePREVIEW

  `attributeMapper, attributeName, toString, writeTo, writeTo, writeTo, writeTo, writeTo`

  ### Methods declared in class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### CustomAttribute

    protected CustomAttribute(AttributeMapperPREVIEW<T> mapper)
    Construct a UnboundAttribute.CustomAttributePREVIEW.
    Parameters:
      `mapper` - the attribute mapper