Package

com.outr

props

Permalink

package props

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

Type Members

  1. trait ChangeListener[T] extends AnyRef

    Permalink

    Convenience functionality for classic change management referencing the old value along with the new value.

    Convenience functionality for classic change management referencing the old value along with the new value.

    T

    the type of changes

  2. trait Channel[T] extends Observable[T]

    Permalink

    Channel is the most simplistic representation of an Observable providing simple methods to set a value to be fired on attached listeners without retaining state.

    Channel is the most simplistic representation of an Observable providing simple methods to set a value to be fired on attached listeners without retaining state.

    T

    the type of value this channel receives

  3. class Dep[T, V] extends Val[T] with StateChannel[T]

    Permalink

    Dep is very much like a Val, but is also a Channel.

    Dep is very much like a Val, but is also a Channel. The basic purpose is to represent a value dependent upon another variable. An example of this might be if you are representing a position left and you also wanted to represent right as well (which would be left + width). These two variables are dependent upon each other and don't fit well as Vars. An example usage might be:

    val left: Var[Double] = Var(0.0) val width: Var[Double] = Var(0.0) val right: Dep[Double, Double] = Dep(left, width)

    If an instance is submissive it removes adjustment from being part of the mutation dependency. For example: in the above scenario if you set width to 100.0 and right to 125.0 then left will be 25.0. Now, what should happen if you change width to 50.0? Should left change to 75.0 (submissive = false) or should right change to 75.0 (submissive = true)?

  4. trait DepConnector[T, V] extends AnyRef

    Permalink
  5. implicit class ListStateChannel[T] extends AnyRef

    Permalink

    Syntactic sugar for mutating collections in a StateChannel

  6. trait MonitoringState[T] extends State[T]

    Permalink

    MonitoringState is a convenience wrapper around State providing functionality to monitor Observables relating to the value from a function.

    MonitoringState is a convenience wrapper around State providing functionality to monitor Observables relating to the value from a function.

    T

    the type of value retained by this State

  7. trait Observable[T] extends AnyRef

    Permalink
  8. trait State[T] extends Observable[T]

    Permalink
  9. trait StateChannel[T] extends Channel[T] with State[T]

    Permalink
  10. class StateChannelContext extends AnyRef

    Permalink

    StateChannelContext is used internally by MonitoringState to track the Observables during assignment of a value function.

  11. class Val[T] extends MonitoringState[T]

    Permalink

    Val, as the name suggests, is like a Scala val.

    Val, as the name suggests, is like a Scala val. This represents an immutable value that is set in the first place and then not modified. However, since the value set may be built from Observables, the generated value may change over time as its dependencies are modified. This class is Observable and will only fire changes if the underlying value is derived from one or more Observables.

    T

    the type of value retained by this State

  12. class Var[T] extends StateChannel[T] with MonitoringState[T]

    Permalink

    Var, as the name suggests, is very similar to a Scala var.

    Var, as the name suggests, is very similar to a Scala var. The value is defined during instantiation, but may be modified later. The value may be a static value, or may be a derived value depending on multiple Observables. If Observables make up the value they will be monitored and events fired on this Observable as the value changes.

    T

    the type of value this channel receives

  13. implicit class VectorStateChannel[T] extends AnyRef

    Permalink

Value Members

  1. object ChangeListener

    Permalink
  2. object Channel

    Permalink
  3. object Dep

    Permalink
  4. object State

    Permalink
  5. object Val

    Permalink
  6. object Var

    Permalink
  7. implicit val doubleConnector: DepConnector[Double, Double]

    Permalink
  8. implicit val intConnector: DepConnector[Int, Int]

    Permalink
  9. implicit def state2Value[T](p: State[T]): T

    Permalink

    Converts a State[T] to T implicitly.

    Converts a State[T] to T implicitly. This is useful for DSL type-based operations like 5 + stateVar.

Inherited from AnyRef

Inherited from Any

Ungrouped