optional

protected open fun <T> optional(beforeGet: DslValue<T?, *>.(T?) -> Unit = {}, beforeSet: DslValue<T?, *>.(T?) -> Unit = {}, getTransform: (T?) -> T? = { it }, setTransform: (T?) -> T? = { it }, afterGet: DslValue<T?, *>.(T?) -> Unit = {}, afterSet: DslValue<T?, *>.(T?) -> Unit = {}, getBypassedHooksValue: (DslValue.BypassedHooks<T?>) -> Unit = {}): ValueProperty<T?, T?>(source)

Creates an optional property delegate (nullable).

Parameters

beforeGet

Pre-hook before getting the value.

beforeSet

Pre-hook before setting the value.

getTransform

Transformation applied on get.

setTransform

Transformation applied on set.

afterGet

Post-hook after getting the value.

afterSet

Post-hook after setting the value.

getBypassedHooksValue

Function to get the DslValue.BypassedHooks instance.