You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

28 lines
677 B
Kotlin

@file:Suppress("UNUSED")
package me.eater.hefbrug.dsl.context
import me.eater.hefbrug.dsl.annotation.HefbrugDSL
import me.eater.hefbrug.module.Module
import me.eater.hefbrug.utils.ArgumentDelegate
import java.util.*
@HefbrugDSL
class ModuleContext(
override val runtimeUUID: UUID,
override val contextUUID: UUID,
private val module: Module,
private val arguments: Map<String, Any?>
) :
TargetedContext() {
val id: String
get() = module.id
fun <T> arg(name: String, default: T? = null) =
ArgumentDelegate<T>(arguments, name, default)
fun <T> arg(default: T? = null) =
ArgumentDelegate<T>(arguments, null, default)
}