value

protected open fun <I, O> value(initial: I, beforeGet: DslValue<O, *>.(I) -> Unit = {}, beforeSet: DslValue<O, *>.(O) -> Unit = {}, getTransform: (I) -> O, setTransform: (O) -> I, afterGet: DslValue<O, *>.(O) -> Unit = {}, afterSet: DslValue<O, *>.(I) -> Unit = {}, getBypassedHooksValue: (DslValue.BypassedHooks<O>) -> Unit = {}): ValueProperty<I, O>(source)

Creates a property delegate with custom get/set transformations.

Parameters

initial

The initial value.

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.


protected open fun <I, O> value(initial: MutableList<I> = mutableListOf(), getTransform: DslMutableList<O>.(I) -> O, setTransform: DslMutableList<O>.(O) -> I, beforeGet: DslMutableList<O>.(Int) -> Unit = {}, beforeSet: DslMutableList<O>.(Int, O) -> Unit = { _, _ -> }, beforeRemove: DslMutableList<O>.(Int) -> Unit = {}, beforeAccess: DslMutableList<O>.() -> Unit = {}, beforeReplace: DslMutableList<O>.(MutableList<O>) -> Unit = {}, accessTransform: DslMutableList<O>.() -> MutableList<O> = { this }, getDslMutableList: (DslMutableList<O>) -> Unit = {}): ListProperty<I, O>(source)

Creates a read-write list property delegate with transformations and hooks.

Parameters

initial

Initial list.

getTransform

Transformation for getting elements.

setTransform

Transformation for setting elements.

beforeGet

Hook before getting an element.

beforeSet

Hook before setting an element.

beforeRemove

Hook before removing an element.

beforeAccess

Hook before accessing the list.

beforeReplace

Hook before replacing the list.

accessTransform

Transformation to the list when accessed.

getDslMutableList

Function to get the DslMutableList instance.


protected open fun <I, O> value(initial: MutableList<I> = mutableListOf(), getTransform: DslMutableList<O>.(I) -> O, setTransform: DslMutableList<O>.(O) -> I, beforeGet: DslMutableList<O>.(index: Int) -> Unit = {}, beforeSet: DslMutableList<O>.(index: Int, element: O) -> Unit = { _, _ -> }, beforeRemove: DslMutableList<O>.(index: Int) -> Unit = {}, beforeAccess: DslMutableList<O>.() -> Unit = {}, accessTransform: DslMutableList<O>.() -> MutableList<O> = { this }, getDslMutableList: (DslMutableList<O>) -> Unit = {}): DslReadOnlyListProperty<O>(source)

Creates a mutable list property delegate with transformations and a hook.

Parameters

initial

Initial list.

getTransform

Transformation for getting elements.

setTransform

Transformation for setting elements.

beforeGet

Hook before getting an element.

beforeSet

Hook before setting an element.

beforeRemove

Hook before removing an element.

beforeAccess

Hook before accessing the list.

accessTransform

Transformation to the list when accessed.

getDslMutableList

Function to get the DslMutableList instance.