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.

19 lines
473 B
Kotlin

package net.cijber.worm.dsl
import net.cijber.worm.dto.ColumnProperty
import kotlin.reflect.KProperty
class ColumnDefinition<T> {
var makeDefault: (() -> T)? = null
operator fun provideDelegate(target: Any, property: KProperty<*>): ColumnProperty<T> {
return ColumnProperty()
}
fun default(default: T) = default({ default })
fun default(builder: () -> T): ColumnDefinition<T> {
this.makeDefault = builder
return this
}
}