interface IRdReactive : IRdBindable, IRdWireable
A non-root node in an object graph which can be synchronized with its remote copy over a network or a similar connection, and which allows to subscribe to its changes.
abstract var async: Boolean
If set to true, local changes to this object can be performed on any thread. Otherwise, local changes can be performed only on the UI thread. |
abstract val isBound: Boolean |
|
abstract val rdid: RdId |
|
abstract val wireScheduler: <ERROR CLASS>
Scheduler on which wire invokes callback onWireReceived. Default is the same as protocol's one. |
abstract fun bind(lf: <ERROR CLASS>, parent: IRdDynamic, name: String): Unit
Inserts the node into the object graph under the given parent and assigns the specified name to it. The node will be removed from the graph when the specified lf lifetime is terminated. |
|
open fun deepClone(): IRdBindable
Creates a clone of this IRdBindable not bound to any protocol |
|
abstract fun identify(identities: IIdentities, id: RdId): Unit
Assigns IDs to this node and its child nodes in the graph. |
|
abstract fun onWireReceived(buffer: AbstractBuffer): Unit
Callback that wire triggers when it receives messaged |
fun <T : IRdBindable?> T.bind(lf: <ERROR CLASS>, parent: IRdDynamic, name: String): Unit? |
|
fun <T> T.deepClonePolymorphic(): T |
|
fun <T : IRdBindable?> T.identify(identities: IIdentities, ids: RdId): Unit? |
interface IInternRoot<TBase : Any> : IRdReactive
Interns values sent over protocol |
|
abstract class RdReactiveBase : RdBindableBase, IRdReactive |