Packages

p

reactify

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. class Channel[T] extends Reactive[T] with Mutable[T]

    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. 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.

    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

    Syntactic sugar for mutating collections in a Var

  4. trait Mutable[T] extends AnyRef

    Mutable represents a reactive element that has mutable state

  5. trait Reactive[T] extends AnyRef

    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 T and are received by those Reactions.

    T

    the type of value this Reactive receives

  6. trait Stateful[T] extends Reactive[T]
  7. class Trigger extends Channel[Unit]

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

  8. class Val[T] extends Reactive[T] with Stateful[T]
  9. class Var[T] extends Val[T] with Mutable[T]

    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

Value Members

  1. implicit def stateful2Value[T](v: Stateful[T]): T
  2. object Channel
  3. object Dep
  4. object Priority

    Convenience values for Priorities

  5. object Reactive
  6. object Trigger
  7. object Val
  8. object Var

Inherited from AnyRef

Inherited from Any

Ungrouped