rd-framework / com.jetbrains.rd.framework.base / RdBindableBase

RdBindableBase

abstract class RdBindableBase : IRdBindable

Constructors

<init>

RdBindableBase()

Properties

bindableChildren

val bindableChildren: MutableList<<ERROR CLASS><String, Any?>>

containingExt

val containingExt: RdExtBase?

isBound

val isBound: Boolean

location

var location: <ERROR CLASS>

parent

var parent: IRdDynamic?

protocol

open val protocol: IProtocol

rdid

open var rdid: RdId

serializationContext

open val serializationContext: SerializationCtx

Functions

bind

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.

getOrCreateExtension

fun <T : Any> getOrCreateExtension(name: String, create: () -> T): T
fun <T : Any> getOrCreateExtension(name: String, clazz: KClass<T>, create: () -> T): T

getValue

operator fun <T : IRdBindable?> T.getValue(thisRef: Any?, property: KProperty<*>): T
operator fun <T : List<IRdBindable?>> T.getValue(thisRef: Any?, property: KProperty<*>): T

identify

open fun identify(identities: IIdentities, id: RdId): Unit

Assigns IDs to this node and its child nodes in the graph.

init

open fun init(lifetime: <ERROR CLASS>): Unit

print

open fun print(printer: <ERROR CLASS>): Unit

synchronizeWith

fun synchronizeWith(lifetime: <ERROR CLASS>, otherBindable: RdBindableBase, accepts: (Any?) -> Boolean = { true }): Unit

toString

open fun toString(): String

Inherited Functions

deepClone

open fun deepClone(): IRdBindable

Creates a clone of this IRdBindable not bound to any protocol

Extension Functions

bind

fun <T : IRdBindable?> T.bind(lf: <ERROR CLASS>, parent: IRdDynamic, name: String): Unit?

deepClonePolymorphic

fun <T> T.deepClonePolymorphic(): T

identify

fun <T : IRdBindable?> T.identify(identities: IIdentities, ids: RdId): Unit?

static

fun <T : RdBindableBase> T.static(id: Int): T

withId

fun <T : RdBindableBase> T.withId(id: RdId): T

withIdFromName

fun <T : RdBindableBase> T.withIdFromName(name: String): T

Inheritors

RdReactiveBase

abstract class RdReactiveBase : RdBindableBase, IRdReactive