forked from cijber/worm
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
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
|
|
}
|
|
} |