api / org.gradle.api / Describable

Describable

@Incubating interface Describable

Types can implement this interface when they provide a human-readable display name. It is strongly encouraged to compute this display name lazily: computing a display name, even if it's only a string concatenation, can take a significant amount of time during configuration for something that would only be used, typically, in error messages.

Since
3.4

Functions

getDisplayName

abstract fun getDisplayName(): String

Returns the display name of this object. It is strongly encouraged to compute it lazily, and cache the value if it is expensive.

Inheritors

BuildCacheKey

interface BuildCacheKey : Describable

Cache key identifying an entry in the build cache.

IdeWorkspace

interface IdeWorkspace : Describable

Represents an IDE "workspace" that is generated by Gradle and can be opened in the IDE.

NativePlatform

interface NativePlatform : Platform, Describable

A target platform for building native binaries. Each target platform is given a name, and may optionally be given a specific Architecture and/or OperatingSystem to target.

 model { platforms { windows_x86 { architecture "i386" operatingSystem "windows" } } } 

SourceDirectorySet

interface SourceDirectorySet : FileTree, PatternFilterable, Named, Describable

A SourceDirectorySet represents a set of source files composed from a set of source directories, along with associated include and exclude patterns.

SourceDirectorySet extends FileTree. The contents of the file tree represent the source files of this set, arranged in a hierarchy. The file tree is live and reflects changes to the source directories and their contents.

VersionControlSpec

interface VersionControlSpec : Describable

Captures user-provided information about a version control system.

WorkerConfiguration

interface WorkerConfiguration : Describable, ActionConfiguration

Represents the configuration of a worker. Used when submitting an item of work to the WorkerExecutor.

 workerExecutor.submit(RunnableWorkImpl.class) { WorkerConfiguration conf -> conf.isolationMode = IsolationMode.PROCESS forkOptions { JavaForkOptions options -> options.maxHeapSize = "512m" options.systemProperty 'some.prop', 'value' options.jvmArgs "-server" } classpath configurations.fooLibrary conf.params = [ "foo", file('bar') ] }