kvision / pl.treksoft.kvision.state

Package pl.treksoft.kvision.state

Classes supporting the observer pattern, including the implementation of the observable list.

Types

(js)

ObservableList

Observable list interface.

interface ObservableList<T> : MutableList<T>, ObservableState<List<T>>
(js)

ObservableListWrapper

Simple observable list implementation.

class ObservableListWrapper<T> : MutableList<T>, ObservableList<T>, ObservableState<List<T>>
(js)

ObservableSet

Observable set interface.

interface ObservableSet<T> : MutableSet<T>, ObservableState<Set<T>>
(js)

ObservableSetWrapper

Simple observable set implementation.

class ObservableSetWrapper<T> : MutableSet<T>, ObservableSet<T>, ObservableState<Set<T>>
(js)

ObservableState

An interface of observable state.

interface ObservableState<S>
(js)

ObservableValue

The observable value class.

open class ObservableValue<T> : ObservableState<T>
(js)

StateBinding

A class which binds the given container to the observable state.

class StateBinding<S : Any, CONT : Container, CONTENT> : Widget
(js)

Updateable

A helper class for updateable content.

class Updateable<S : Any, CONTENT>

Functions

(js)

bind

An extension function which binds the widget to the observable state.

fun <S, W : Widget> W.bind(observableState: ObservableState<S>, removeChildren: Boolean = true, factory: W.(S) -> Unit): W
(js)

observableListOf

Creates an instance of ObservableList

fun <T> observableListOf(vararg items: T): ObservableList<T>
(js)

observableSetOf

Creates an instance of ObservableSet

fun <T> observableSetOf(vararg items: T): ObservableSet<T>
(js)

stateBinding

DSL builder extension function.

fun <S : Any, CONT : Container> CONT.stateBinding(observableState: ObservableState<S>, factory: CONT.(S) -> Unit): StateBinding<S, CONT, Unit>
(js)

stateUpdate

DSL builder extension function for updateable redux content.

fun <S : Any, CONT : Container, CONTENT> CONT.stateUpdate(observableState: ObservableState<S>, factory: CONT.(S) -> CONTENT): Updateable<S, CONTENT>