21 lines
1.1 KiB
Kotlin
21 lines
1.1 KiB
Kotlin
package io.gitlab.jfronny.jfmod.ext
|
|
|
|
import com.matthewprenger.cursegradle.CurseExtension
|
|
import com.matthewprenger.cursegradle.CurseProject
|
|
import com.matthewprenger.cursegradle.CurseRelation
|
|
import com.matthewprenger.cursegradle.Options
|
|
import org.gradle.api.Action
|
|
import org.gradle.api.DefaultTask
|
|
import org.gradle.api.Project
|
|
import org.gradle.api.tasks.TaskContainer
|
|
import org.gradle.api.tasks.TaskProvider
|
|
import org.gradle.kotlin.dsl.closureOf
|
|
import org.gradle.kotlin.dsl.configure
|
|
import org.gradle.kotlin.dsl.named
|
|
|
|
val TaskContainer.curseforge: TaskProvider<DefaultTask> get() = named<DefaultTask>("curseforge")
|
|
|
|
fun Project.curseforge(configure: Action<CurseExtension>) = extensions.configure<CurseExtension> { configure.execute(this) }
|
|
fun CurseExtension.options(configure: Action<Options>) = options(closureOf<Options> { configure.execute(this) })
|
|
fun CurseExtension.project(configure: Action<CurseProject>) = project(closureOf<CurseProject> { configure.execute(this) })
|
|
fun CurseProject.relations(configure: Action<CurseRelation>) = relations(closureOf<CurseRelation> { configure.execute(this) }) |