class Dep[T, R] extends Reactive[T] with Stateful[T] with Mutable[T]
Dep allows creation of a dependent Var
on another Var
allowing conversion between the two. This can be useful for
different representations of the same value. For example, in a graphical environment left
, center
, and right
are all different representations of the value (horizontal position). Maintaining three distinct values while
keeping them in-sync is painful. With Dep
you can simply define one Var
and two Dep
values like:
val left: Var[Double] = Var(0.0)
val width: Var[Double] = Var(0.0)
val center: Dep[Double, Double] = Dep(left)(_ + (width / 2.0), _ - (width / 2.0))
val right: Dep[Double, Double] = Dep(left)(_ + width, _ - width)
Now, modification to left
, center
, or right
will maintain the appropriate value for each without any additional
boilerplate.
- T
the type of value this Reactive receives
- R
the type that this Dep receives
- Alphabetic
- By Inheritance
- Dep
- Mutable
- Stateful
- Reactive
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Value Members
- def !(future: Future[T])(implicit ec: ExecutionContext): Future[Unit]
Convenience functionality to assign the result of a future (upon completion) to this Channel
Convenience functionality to assign the result of a future (upon completion) to this Channel
- Definition Classes
- Mutable
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def &(that: Stateful[T]): Stateful[T]
Group multiple Statefuls together
Group multiple Statefuls together
- Definition Classes
- Stateful
- def :=(f: => T): Unit
Convenience alternative to "set"
Convenience alternative to "set"
- Definition Classes
- Mutable
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def @=(f: T): Unit
Convenience alternative to "static"
Convenience alternative to "static"
- Definition Classes
- Mutable
- def and(that: Stateful[T]): Stateful[T]
Group multiple Statefuls together
Group multiple Statefuls together
- Definition Classes
- Stateful
- def apply(): T
Convenience wrapper around
get
Convenience wrapper around
get
- Definition Classes
- Stateful
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def attach(f: (T) => Unit, priority: Double = Priority.Normal): Reaction[T]
Convenience method to create a Reaction to attach to this Reactive
Convenience method to create a Reaction to attach to this Reactive
- f
the function reaction
- priority
the priority in comparison to other reactions (Defaults to Priority.Normal)
- returns
created Reaction[T]
- Definition Classes
- Reactive
- def attachAndFire(f: (T) => Unit, priority: Double = Priority.Normal): Reaction[T]
Convenience functionality to attach a Reaction and immediately fire the current state on the Reaction.
Convenience functionality to attach a Reaction and immediately fire the current state on the Reaction.
- f
the function reaction
- priority
the priority in comparison to other reactions (Defaults to Priority.Normal)
- returns
Reaction[T]
- Definition Classes
- Stateful
- def changes(f: (T, T) => Unit, priority: Double = Priority.Normal): Reaction[T]
Convenience method to create a Reaction to monitor changes to this Reactive
Convenience method to create a Reaction to monitor changes to this Reactive
- f
the function reaction to receive changes
- priority
the priority in comparison to other reactions (Defaults to Priority.Normal)
- returns
created Reaction[T]
- Definition Classes
- Reactive
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def fire(value: T, previous: Option[T], reactions: List[Reaction[T]] = this.reactions()): ReactionStatus
Fires the value to the Reactions
Fires the value to the Reactions
- Attributes
- protected
- Definition Classes
- Reactive
- def future(condition: (T) => Boolean = _ => true): Future[T]
Convenience method to create a
Future[T]
that will complete upon the next reaction that meets to supplied condition.Convenience method to create a
Future[T]
that will complete upon the next reaction that meets to supplied condition.- condition
optional condition that must be true for this to fire (Defaults to accept anything)
- returns
Future[T]
- Definition Classes
- Reactive
- def get: T
Gets the current value
- 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
- 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()
- def on(f: => Unit, priority: Double = Priority.Normal): Reaction[T]
Convenience method to create a Reaction to monitor changes to this Reactive when you don't care about the actual value.
Convenience method to create a Reaction to monitor changes to this Reactive when you don't care about the actual value.
- f
the function reaction to invoke in reaction to a value received
- priority
the priority in comparison to other reactions (Defaults to Priority.Normal)
- returns
created Reaction[T]
- Definition Classes
- Reactive
- def once(f: (T) => Unit, condition: (T) => Boolean = _ => true, priority: Double = Priority.Normal): Reaction[T]
Convenience method to create a Reaction to monitor a single reaction based on an optional condition.
Convenience method to create a Reaction to monitor a single reaction based on an optional condition.
- f
the function reaction
- condition
optional condition that must be true for this to fire (Defaults to accept anything)
- priority
the priority in comparison to other reactions (Defaults to Priority.Normal)
- returns
created Reaction[T]
- Definition Classes
- Reactive
- val owner: Var[R]
- lazy val reactions: Reactions[T]
Reactions currently associated with this Reactive
Reactions currently associated with this Reactive
- Definition Classes
- Reactive
- def set(f: => T): Unit
Sets the function evaluation representing the new value for this mutable entity
- def static(f: T): Unit
Sets a static value representing the new value for this mutable entity
Sets a static value representing the new value for this mutable entity
- Definition Classes
- Mutable
- def status: Option[ReactionStatus]
If the current thread is reacting to a value currently, status represents the status of the reaction.
If the current thread is reacting to a value currently, status represents the status of the reaction. This can be set to ReactionStatus.Stop in order to stop propagation. This can also be achieved via stopPropagation().
- Definition Classes
- Reactive
- def status_=(status: ReactionStatus): Unit
- Definition Classes
- Reactive
- def stopPropagation(): Unit
Shortcut functionality to call
status = ReactionStatus.Stop
Shortcut functionality to call
status = ReactionStatus.Stop
- Definition Classes
- Reactive
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def update(f: => T): Unit
Convenience alternative to "set"
Convenience alternative to "set"
- Definition Classes
- Mutable
- 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])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated