Package org.gradle.api.attributes

## Interface HasConfigurableAttributes<SELF>

- Type Parameters:
    `SELF` - type extending this interface
  All Superinterfaces:
    `HasAttributes`
  All Known Subinterfaces:
    `ArtifactView.ViewConfiguration`, `ClientModule`, `ComponentMetadataDetails`, `Configuration`, `ConfigurationPublications`, `ConfigurationVariant`, `ConsumableConfiguration`, `DependencyConstraint`, `DependencyScopeConfiguration`, `ExternalDependency`, `ExternalModuleDependency`, `MinimalExternalModuleDependency`, `ModuleDependency`, `ProjectDependency`, `ResolvableConfiguration`, `VariantMetadata`

      public interface HasConfigurableAttributes<SELF>
      extends HasAttributes

  Represents something that carries attributes by utilizing an `AttributeContainer` that is configurable.
  Since:
    3.4

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `SELF` | `attributes​(Action<? super AttributeContainer> action)` | Configure the attribute container that provides the attributes associated with this domain object.

    - ### Methods inherited from interface org.gradle.api.attributes.HasAttributes

      `getAttributes`

- - ### Method Detail

    - #### attributes

          SELF attributes​(Action<? super AttributeContainer> action)

      Configure the attribute container that provides the attributes associated with this domain object.