trait CastableReadableProperty[A] extends ReadableProperty[A]
Property which can be casted.
NOTE: Those casts are checked in compilation time: "it compiles" == "it works".
- Alphabetic
- By Inheritance
- CastableReadableProperty
- ReadableProperty
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def get: A
- returns
Current property value.
- Definition Classes
- ReadableProperty
- abstract def listen(valueListener: (A) => Any, initUpdate: Boolean = false): utils.Registration
Registers listener which will be called on value change.
Registers listener which will be called on value change.
- initUpdate
If
true
, listener will be instantly triggered with current value of property.
- Definition Classes
- ReadableProperty
- abstract def listenOnce(valueListener: (A) => Any): utils.Registration
Registers listener which will be called on the next value change.
Registers listener which will be called on the next value change. This listener will be fired only once.
- Definition Classes
- ReadableProperty
- abstract def listenersCount(): Int
Returns listeners count.
Returns listeners count.
- Definition Classes
- ReadableProperty
- abstract def listenersUpdate(): Unit
This method should be called when the listener is registered or removed.
This method should be called when the listener is registered or removed.
- Attributes
- protected[properties]
- Definition Classes
- ReadableProperty
- abstract def streamTo[B](target: Property[B], initUpdate: Boolean = true)(transformer: (A) => B): utils.Registration
Streams value changes to the
target
property.Streams value changes to the
target
property. It is not as strong relation astransform
, becausetarget
can change value independently.- Definition Classes
- ReadableProperty
- abstract def transform[B](transformer: (A) => B): ReadableProperty[B]
Creates ReadableProperty[B] linked to
this
.Creates ReadableProperty[B] linked to
this
. Changes will be synchronized withthis
.- B
Type of new Property.
- transformer
Method transforming type A of existing Property to type B of new Property.
- returns
New ReadableProperty[B], which will be synchronised with original ReadableProperty[A].
- Definition Classes
- ReadableProperty
- abstract def transformToSeq[B](transformer: (A) => com.avsystem.commons.BSeq[B])(implicit arg0: PropertyCreator[B]): seq.ReadableSeqProperty[B, ReadableProperty[B]]
Creates ReadableSeqProperty[B] linked to
this
.Creates ReadableSeqProperty[B] linked to
this
. Changes will be synchronized withthis
.- B
Type of elements in new SeqProperty.
- transformer
Method transforming type A of existing Property to type Seq[B] of new Property.
- returns
New ReadableSeqProperty[B], which will be synchronised with original ReadableProperty[A].
- Definition Classes
- ReadableProperty
- abstract def valueChanged(): Unit
This method should be called when the value has changed.
This method should be called when the value has changed.
- Attributes
- protected[properties]
- Definition Classes
- ReadableProperty
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def asModel(implicit ev: ModelPropertyCreator[A]): model.ReadableModelProperty[A]
Safely casts DirectProperty[A] to ModelProperty[A]
- def asSeq[B](implicit sev: <:<[A, com.avsystem.commons.BSeq[B]], ev: SeqPropertyCreator[B, com.avsystem.commons.BSeq]): seq.ReadableSeqProperty[B, CastableReadableProperty[B]]
Safely casts DirectProperty[Seq[A]] to DirectSeqProperty[A]
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- def combine[B, O](property: ReadableProperty[B])(combiner: (A, B) => O): ReadableProperty[O]
Combines two properties into a new one.
Combines two properties into a new one. Created property will be updated after any change in the origin ones.
- B
Type of elements in provided property.
- O
Output property elements type.
- property
Property[B]
to combine withthis
.- combiner
Method combining values A and B into O.
- returns
Property[O] updated on any change in
this
orproperty
.
- Definition Classes
- ReadableProperty
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def mirror[B >: A]()(implicit arg0: PropertyCreator[B]): MirrorProperty[B]
Creates a mutable copy of this property which follows the stream of updates from this property.
Creates a mutable copy of this property which follows the stream of updates from this property. Similarly to streamTo, the target can change value independently and origin value updates can be cancelled.
- Definition Classes
- ReadableProperty
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])