Package org.gradle.api.attributes

## Interface Usage

- All Superinterfaces:
    `Named`

      public interface Usage
      extends Named

  Represents the usage of a configuration. Typical usages include compilation or runtime. This interface allows the user to customize usages by implementing this interface.
  Since:
    3.4

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.gradle.api.Named

      `Named.Namer`

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static java.lang.String` | `C_PLUS_PLUS_API` | The C++ API of a library, packaged as header directories.
    `static java.lang.String` | `JAVA_API` | The Java API of a library, packaged as class path elements, either a JAR or a classes directory.
    `static java.lang.String` | `JAVA_RUNTIME` | The Java runtime of a component, packaged as class path elements, either a JAR or a classes directory.
    `static java.lang.String` | `NATIVE_LINK` | The native link files of a library, packaged as static or shared library.
    `static java.lang.String` | `NATIVE_RUNTIME` | The native runtime files of a library, packaged as a shared library.
    `static java.lang.String` | `SWIFT_API` | The Swift API of a library, packaged as swiftmodule files.
    `static Attribute<Usage>` | `USAGE_ATTRIBUTE` |
    `static java.lang.String` | `VERSION_CATALOG` | A version catalog, packaged as TOML files, for use as recommendations for dependency and plugin versions.

  - ### Method Summary

    - ### Methods inherited from interface org.gradle.api.Named

      `getName`

- - ### Field Detail

    - #### USAGE_ATTRIBUTE

          static final Attribute<Usage> USAGE_ATTRIBUTE

    - #### JAVA_API

          static final java.lang.String JAVA_API

      The Java API of a library, packaged as class path elements, either a JAR or a classes directory.
      Since:
        4.0
      See Also:
        Constant Field Values

    - #### JAVA_RUNTIME

          static final java.lang.String JAVA_RUNTIME

      The Java runtime of a component, packaged as class path elements, either a JAR or a classes directory.
      Since:
        4.0
      See Also:
        Constant Field Values

    - #### C_PLUS_PLUS_API

          static final java.lang.String C_PLUS_PLUS_API

      The C++ API of a library, packaged as header directories.
      Since:
        4.1
      See Also:
        Constant Field Values

    - #### NATIVE_LINK

          static final java.lang.String NATIVE_LINK

      The native link files of a library, packaged as static or shared library.
      Since:
        4.1
      See Also:
        Constant Field Values

    - #### NATIVE_RUNTIME

          static final java.lang.String NATIVE_RUNTIME

      The native runtime files of a library, packaged as a shared library.
      Since:
        4.1
      See Also:
        Constant Field Values

    - #### SWIFT_API

          static final java.lang.String SWIFT_API

      The Swift API of a library, packaged as swiftmodule files.
      Since:
        4.1
      See Also:
        Constant Field Values

    - #### VERSION_CATALOG

          static final java.lang.String VERSION_CATALOG

      A version catalog, packaged as TOML files, for use as recommendations for dependency and plugin versions.
      Since:
        7.0
      See Also:
        Constant Field Values