required
protected open fun <T> required(beforeGet: DslValue<T, *>.(T?) -> Unit = {}, beforeSet: DslValue<T, *>.(T?) -> Unit = {}, getTransform: (T) -> T = { it }, setTransform: (T) -> T = { it }, validateGet: KProperty<*>.(T) -> Boolean = { true }, validateSet: KProperty<*>.(T) -> Boolean = { true }, getBypassedHooksValue: (DslValue.BypassedHooks<T>) -> Unit = {}, messageBuilder: KProperty<*>.() -> Any = { "Property $name is required and cannot be null." }): ValueProperty<T?, T>(source)
Creates a required (non-null) property delegate.
Parameters
before Get
Pre-hook before getting the value.
before Set
Pre-hook before setting the value.
get Transform
Transformation applied on get.
set Transform
Transformation applied on set.
validate Get
Validation for get operation after transformation.
validate Set
Validation for set operation after transformation.
get Bypassed Hooks Value
Function to get the DslValue.BypassedHooks instance.
message Builder
Error message builder.