Package

reactify

Permalink

package reactify

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. reactify
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. trait Channel[T] extends Reactive[T]

    Permalink

    Channel is a stateless Reactive implementation exposing a public method to fire values.

    Channel is a stateless Reactive implementation exposing a public method to fire values.

    T

    the type of value this Reactive receives

  2. trait Dep[T, R] extends Var[T]

    Permalink

    Dep allows creation of a dependent Var on another Var allowing conversion between the two.

    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

  3. implicit class ListVar[T] extends AnyRef

    Permalink

    Syntactic sugar for mutating collections in a Var

  4. trait Reactive[T] extends AnyRef

    Permalink

    Reactive is the core trait for Reactify.

    Reactive is the core trait for Reactify. The basic premise is that a Reactive represents an instance that can attach Reactions and fire instances of T that are received by those Reactions.

    T

    the type of value this Reactive receives

  5. case class State[T](owner: Reactive[T], index: Long, function: () ⇒ T) extends Reaction[Any] with Product with Serializable

    Permalink

    State is an internal class to represent the assigned state of a Val, Var, or Dep

  6. class StateCounter extends AnyRef

    Permalink
  7. trait Trigger extends Channel[Unit]

    Permalink

    Trigger is a convenience class wrapping Channel[Unit] specifically for scenarios where the value doesn't matter, just the reactions themselves.

  8. trait Val[T] extends Reactive[T]

    Permalink

    Val represents a final variable that cannot be set apart from its instantiation.

    Val represents a final variable that cannot be set apart from its instantiation. However, unlike a Scala val, a Val may still fire changes if its value is derived from Vars that make it up. A Val is a stateful Reactive.

    T

    the type of value this Reactive receives

  9. trait Var[T] extends Val[T] with Channel[T]

    Permalink

    Var represents the combination of Val and Channel into a stateful and mutable underlying value.

    Var represents the combination of Val and Channel into a stateful and mutable underlying value.

    T

    the type of value this Reactive receives

  10. implicit class VectorVar[T] extends AnyRef

    Permalink

Value Members

  1. object Channel

    Permalink
  2. object Dep

    Permalink
  3. object Priority

    Permalink

    Convenience values for Priorities

  4. object Reactive

    Permalink
  5. object StateCounter

    Permalink

    StateCounter provides infrastructure to glean the references to States within a functional block of code.

    StateCounter provides infrastructure to glean the references to States within a functional block of code. This is primarily for internal use, but can be used externally to get additional information regarding references.

  6. object Trigger

    Permalink
  7. object Val

    Permalink
  8. object Var

    Permalink
  9. package bind

    Permalink
  10. package group

    Permalink
  11. package reaction

    Permalink
  12. package standard

    Permalink
  13. package transaction

    Permalink
  14. implicit def val2Value[T](v: Val[T]): T

    Permalink

Inherited from AnyRef

Inherited from Any

Ungrouped