# Usage

interface Usage : Named(source)

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

## Properties

C_PLUS_PLUS_API
Link copied to clipboard
val C_PLUS_PLUS_API: String = "cplusplus-api"
The C++ API of a library, packaged as header directories.
JAVA_API
Link copied to clipboard
val JAVA_API: String = "java-api"
The Java API of a library, packaged as class path elements, either a JAR or a classes directory.
JAVA_RUNTIME
Link copied to clipboard
val JAVA_RUNTIME: String = "java-runtime"
The Java runtime of a component, packaged as class path elements, either a JAR or a classes directory.
NATIVE_LINK
Link copied to clipboard
val NATIVE_LINK: String = "native-link"
The native link files of a library, packaged as static or shared library.
NATIVE_RUNTIME
Link copied to clipboard
val NATIVE_RUNTIME: String = "native-runtime"
The native runtime files of a library, packaged as a shared library.
SWIFT_API
Link copied to clipboard
val SWIFT_API: String = "swift-api"
The Swift API of a library, packaged as swiftmodule files.
USAGE_ATTRIBUTE
Link copied to clipboard
val USAGE_ATTRIBUTE: Attribute<Usage>
VERSION_CATALOG
Link copied to clipboard
val VERSION_CATALOG: String = "version-catalog"
A version catalog, packaged as TOML files, for use as recommendations for dependency and plugin versions.

## Functions

getName
Link copied to clipboard
abstract fun getName(): String
The object's name.