Package-level declarations

Types

Link copied to clipboard
@RequiresOptIn(level = RequiresOptIn.Level.ERROR, message = "This is a dangerous API and its use requires extreme caution. Make sure you fully read and understand documentation of the declaration that is marked as a delicate API.")
annotation class DangerousMetroGradleApi(val message: String)

Marks declarations in the Metro Gradle API that are dangerous — they are extremely experimental, unstable, and should be regarded as wholly unproven in production. Carefully read documentation and message of any declaration marked as DangerousMetroGradleApi.

Link copied to clipboard
@RequiresOptIn(level = RequiresOptIn.Level.WARNING, message = "This is a delicate API and its use requires care. Make sure you fully read and understand documentation of the declaration that is marked as a delicate API.")
annotation class DelicateMetroGradleApi(val message: String)

Marks declarations in the Metro Gradle API that are delicate — they have narrow use-cases and should be used with care in general code. Carefully read documentation and message of any declaration marked as DelicateMetroGradleApi.

Link copied to clipboard

Render mode for Metro's build-output diagnostics.

Link copied to clipboard
Link copied to clipboard
class MetroGradleSubplugin @Inject constructor(problems: Problems) : KotlinCompilerPluginSupportPlugin
Link copied to clipboard
abstract class MetroPluginExtension @Inject constructor(compilerVersion: Provider<KotlinToolingVersion>, layout: ProjectLayout, objects: ObjectFactory, providers: ProviderFactory)
Link copied to clipboard

Controls the behavior of optional bindings on a per-compilation basis.

Link copied to clipboard
@RequiresOptIn(level = RequiresOptIn.Level.WARNING, message = "Marks declarations in the Metro Gradle API that require IDE support to be enabled to be useful in a project. If you are willing to do this, you can opt in this annotation! See https://zacsweers.github.io/metro/latest/installation/#ide-support for setup instructions.")
annotation class RequiresIdeSupport

Marks declarations in the Metro Gradle API that require IDE support to be enabled to be useful in a project. If you are willing to do this, you can opt in this annotation!