commonMain.co.touchlab.skie.plugin.configuration.SkieExtension.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of gradle-plugin-api-jvm Show documentation
Show all versions of gradle-plugin-api-jvm Show documentation
Public API for SKIE Gradle plugin.
The newest version!
@file:Suppress("MemberVisibilityCanBePrivate", "unused")
package co.touchlab.skie.plugin.configuration
import co.touchlab.skie.configuration.SkieConfigurationFlag
import org.gradle.api.Action
import org.gradle.api.model.ObjectFactory
import org.gradle.api.provider.Property
import org.gradle.api.provider.SetProperty
import javax.inject.Inject
open class SkieExtension @Inject constructor(objects: ObjectFactory) {
/**
* Disables SKIE plugin. Useful for checking if an error is a bug in SKIE, or in the Kotlin compiler.
*/
val isEnabled: Property = objects.property(Boolean::class.java).convention(true)
val additionalConfigurationFlags: SetProperty =
objects.setProperty(SkieConfigurationFlag::class.java).convention(emptySet())
val suppressedConfigurationFlags: SetProperty =
objects.setProperty(SkieConfigurationFlag::class.java).convention(emptySet())
val analytics: SkieAnalyticsConfiguration = objects.newInstance(SkieAnalyticsConfiguration::class.java)
fun analytics(action: Action) {
action.execute(analytics)
}
val build: SkieBuildConfiguration = objects.newInstance(SkieBuildConfiguration::class.java)
fun build(action: Action) {
action.execute(build)
}
val debug: SkieDebugConfiguration = objects.newInstance(SkieDebugConfiguration::class.java)
fun debug(action: Action) {
action.execute(debug)
}
val features: SkieFeatureConfiguration = objects.newInstance(SkieFeatureConfiguration::class.java)
fun features(action: Action) {
action.execute(features)
}
val migration: SkieMigrationConfiguration = objects.newInstance(SkieMigrationConfiguration::class.java)
fun migration(action: Action) {
action.execute(migration)
}
val swiftBundling: SkieSwiftBundlingConfiguration = objects.newInstance(SkieSwiftBundlingConfiguration::class.java)
fun swiftBundling(action: Action) {
action.execute(swiftBundling)
}
companion object
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy