Trait

rescala.interface

RescalaInterface

Related Doc: package interface

Permalink

trait RescalaInterface extends Operators

Rescala has two main abstractions. Event and Signal commonly referred to as reactives. Use Var to create signal sources and Evt to create event sources.

Events and signals can be created from other reactives by using combinators, signals additionally can be created using Signal expressions.

Linear Supertypes
Known Subclasses
Ordering
  1. Grouped
  2. Alphabetic
  3. By Inheritance
Inherited
  1. RescalaInterface
  2. Operators
  3. ObserveBundle
  4. Sources
  5. FlattenApi
  6. FlattenCollectionCompat
  7. SignalBundle
  8. SignalCompatBundle
  9. EventBundle
  10. EventCompatBundle
  11. ReadableMacroBundle
  12. DefaultImplementations
  13. AnyRef
  14. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. class ChangeEventImpl[T] extends Base[State, (Pulse[T], Pulse[Diff[T]])] with Derived with Operators.Event[Diff[T]] with DisconnectableImpl

    Permalink
    Definition Classes
    DefaultImplementations
  2. type CreationTicket = core.CreationTicket[State]

    Permalink
    Definition Classes
    Operators
  3. abstract class DerivedImpl[T] extends Base[State, Pulse[T]] with Derived with DisconnectableImpl

    Permalink
    Definition Classes
    DefaultImplementations
  4. type DynamicTicket = core.DynamicTicket[State]

    Permalink
    Definition Classes
    Operators
  5. trait Event[+T] extends Operators.EventCompat[T] with Disconnectable

    Permalink

    Events only propagate a value when they are changing, when the system is at rest, events have no values.

    Events only propagate a value when they are changing, when the system is at rest, events have no values.

    Note: We hide implicit parameters of the API in the documentation. They are used to ensure correct creation, and you normally do not have to worry about them, except if you accidentally call the implicit parameter list, in which cas you may get cryptic errors. This is a scala limitation. We also hide the internal state parameter of passed and returned events.

    T

    Value type of the event occurrences.

    Definition Classes
    EventBundle
  6. trait EventCompat[+T] extends operator.Operators.ReadableMacro[State, Option[T]]

    Permalink
    Definition Classes
    EventCompatBundle
  7. class EventImpl[T] extends Operators.DerivedImpl[T] with Operators.Event[T]

    Permalink

    Definition Classes
    DefaultImplementations
  8. class Evt[T] extends Base[State, Pulse[T]] with Operators.Source[T] with Operators.Event[T]

    Permalink

    Source events with imperative occurrences

    Source events with imperative occurrences

    T

    Type returned when the event fires

    Definition Classes
    Sources
  9. trait Flatten[-A, R] extends AnyRef

    Permalink
    Definition Classes
    FlattenApi
    Annotations
    @implicitNotFound( ... )
  10. trait ObserveInteract extends Observation

    Permalink
    Definition Classes
    ObserveBundle
  11. type ReSource = core.ReSource { type State[V] = RescalaInterface.this.State[V] }

    Permalink
    Definition Classes
    Operators
  12. trait ReadableMacro[S[_], +A] extends ReadAs[S, A] with MacroAccess[A, ReadAs[S, A]]

    Permalink
    Definition Classes
    ReadableMacroBundle
  13. type ScopeSearch = core.ScopeSearch[State]

    Permalink
    Definition Classes
    Operators
  14. trait Signal[+T] extends Disconnectable with Operators.SignalCompat[T]

    Permalink

    Time changing value derived from the dependencies.

    Time changing value derived from the dependencies.

    T

    Type stored by the signal

    Definition Classes
    SignalBundle
  15. trait SignalCompat[+T] extends operator.Operators.ReadableMacro[State, T]

    Permalink
    Definition Classes
    SignalCompatBundle
  16. class SignalImpl[T] extends Operators.DerivedImpl[T] with Operators.Signal[T]

    Permalink

    Definition Classes
    DefaultImplementations
  17. trait Source[T] extends ReSource

    Permalink
    Definition Classes
    Sources
  18. abstract type State[_]

    Permalink
    Definition Classes
    Operators
  19. type StaticTicket = core.StaticTicket[State]

    Permalink
    Definition Classes
    Operators
  20. class UserDefinedFunction[+T, Dep, Cap] extends AnyRef

    Permalink
    Definition Classes
    SignalCompatBundle
  21. class Var[A] extends Base[State, Pulse[A]] with Operators.Source[A] with Operators.Signal[A]

    Permalink

    Source signals with imperatively updates.

    Source signals with imperatively updates.

    A

    Type stored by the signal

    Definition Classes
    Sources

Abstract Value Members

  1. abstract def scheduler: Scheduler[State]

    Permalink

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. object Event

    Permalink

    Similar to rescala.compat.SignalCompatBundle.Signal expressions, but resulting in an event.

    Similar to rescala.compat.SignalCompatBundle.Signal expressions, but resulting in an event. Accessed events return options depending on whether they fire or not, and the complete result of the expression is an event as well.

    Definition Classes
    EventCompatBundle
    See also

    rescala.compat.SignalCompatBundle.Signal

  5. object Events

    Permalink
    Definition Classes
    EventBundle
  6. final def Evt[A]()(implicit ticket: CreationTicket): Evt[A]

    Permalink

    Definition Classes
    Sources
  7. object Observe

    Permalink

    observers are normale reactives that are configured by a function that converts the value of the input into an ObserveInteract

    observers are normale reactives that are configured by a function that converts the value of the input into an ObserveInteract

    Definition Classes
    ObserveBundle
  8. implicit def OnEv[T](e: Event[T]): OnEv[T]

    Permalink
  9. implicit def OnEvs[T](e: ⇒ Seq[Event[T]]): OnEvs[T]

    Permalink
  10. object Signal

    Permalink

    A signal expression can be used to create signals accessing arbitrary other signals.

    A signal expression can be used to create signals accessing arbitrary other signals. Use the apply method on a signal to access its value inside of a signal expression.

    val a: Signal[Int]
    val b: Signal[Int]
    val result: Signal[String] = Signal { a().toString + b().toString}
    Definition Classes
    SignalCompatBundle
  11. object Signals

    Permalink

    Functions to construct signals, you probably want to use signal expressions in rescala.interface.RescalaInterface.Signal for a nicer API.

    Functions to construct signals, you probably want to use signal expressions in rescala.interface.RescalaInterface.Signal for a nicer API.

    Definition Classes
    SignalBundle
  12. object UserDefinedFunction

    Permalink
    Definition Classes
    SignalCompatBundle
  13. object Var

    Permalink

    Creates new Vars

    Creates new Vars

    Definition Classes
    Sources
  14. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  15. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @throws( ... )
  16. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  17. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  18. def firstFiringEvent[B, T[U] <: TraversableLike[U, T[U]], Evnt[A1] <: Event[A1]](implicit ticket: CreationTicket, cbf: CanBuildFrom[T[_], Option[B], T[Option[B]]]): Flatten[Signal[T[Evnt[B]]], Event[B]]

    Permalink

    Flatten a Signal[Traversable[Event[B]\]\] into a Event[B].

    Flatten a Signal[Traversable[Event[B]\]\] into a Event[B]. The new Event fires the value of any inner firing Event. If multiple inner Events fire, the first one in iteration order is selected.

    Definition Classes
    FlattenCollectionCompat
  19. implicit def flattenImplicitForarraySignals[B, Sig[U] <: Signal[U]](implicit arg0: ClassTag[B], ticket: CreationTicket): Flatten[Signal[Array[Sig[B]]], Signal[Array[B]]]

    Permalink

    Flatten a Signal[Array[Signal[B]\]\] into a Signal[Array[B]\] where the new Signal updates whenever any of the inner or the outer signal updates

    Flatten a Signal[Array[Signal[B]\]\] into a Signal[Array[B]\] where the new Signal updates whenever any of the inner or the outer signal updates

    Definition Classes
    FlattenApi
  20. implicit def flattenImplicitForevent[A, B, Evnt[A1] <: Event[A1]](implicit ticket: CreationTicket): Flatten[Signal[Evnt[B]], Event[B]]

    Permalink

    Flatten a Signal[Event[B]]\] into a Event[B] where the new Event fires whenever the current inner event fires

    Flatten a Signal[Event[B]]\] into a Event[B] where the new Event fires whenever the current inner event fires

    Definition Classes
    FlattenApi
  21. implicit def flattenImplicitForoption[A, B](implicit ticket: CreationTicket): Flatten[Event[Option[B]], Event[B]]

    Permalink

    Flatten a Event[Option[B]\] into a Event[B] that fires whenever the inner option is defined.

    Flatten a Event[Option[B]\] into a Event[B] that fires whenever the inner option is defined.

    Definition Classes
    FlattenApi
  22. implicit def flattenImplicitForoptionSignal[B, Sig[U] <: Signal[U]](implicit ticket: CreationTicket): Flatten[Signal[Option[Sig[B]]], Signal[Option[B]]]

    Permalink

    Flatten a Signal[Option[Signal[B]\]\] into a Signal[Option[B]\] where the new Signal updates whenever any of the inner or the outer signal updates

    Flatten a Signal[Option[Signal[B]\]\] into a Signal[Option[B]\] where the new Signal updates whenever any of the inner or the outer signal updates

    Definition Classes
    FlattenApi
  23. implicit def flattenImplicitForsignal[B](implicit ticket: CreationTicket): Flatten[Signal[Signal[B]], Signal[B]]

    Permalink

    Flatten a Signal[Signal[B]\] into a Signal[B] that changes whenever the outer or inner signal changes.

    Flatten a Signal[Signal[B]\] into a Signal[B] that changes whenever the outer or inner signal changes.

    Definition Classes
    FlattenApi
  24. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate()
  25. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate()
  26. implicit def implicitScheduler: Scheduler[State]

    Permalink

  27. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  28. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  29. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate()
  30. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate()
  31. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  32. def toString(): String

    Permalink
    Definition Classes
    RescalaInterface → AnyRef → Any
  33. def transaction[R](initialWrites: of[State]*)(admissionPhase: (AdmissionTicket[State]) ⇒ R): R

    Permalink

    Executes a transaction.

    Executes a transaction.

    R

    Result type of the admission function

    initialWrites

    All inputs that might be changed by the transaction

    admissionPhase

    An admission function that may rescala.operator.Sources.Evt.admit / rescala.operator.Sources.Var.admit arbitrary input changes that will be applied as an atomic transaction at the end.

    returns

    Result of the admission function

    Example:
    1. transaction(a, b){ implicit at => a.set(5); b.set(1); at.now(a) }

  34. def transactionWithWrapup[I, R](iw: of[State]*)(ap: (AdmissionTicket[State]) ⇒ I)(wrapUp: (I, of[State]) ⇒ R): R

    Permalink

    Executes a transaction with WrapUpPhase.

    Executes a transaction with WrapUpPhase.

    See also

    transaction

  35. def traversableOfAllOccuringEventValues[B, T[U] <: TraversableLike[U, T[U]], Evnt[A1] <: Event[A1]](implicit ticket: CreationTicket, cbf: CanBuildFrom[T[_], Option[B], T[Option[B]]]): Flatten[Signal[T[Evnt[B]]], Event[T[Option[B]]]]

    Permalink

    Flatten a Signal[Traversable[Event[B]\]\] into a Event[Traversable[Option[B]\]\] where the new Event fires whenever any of the inner events fire

    Flatten a Signal[Traversable[Event[B]\]\] into a Event[Traversable[Option[B]\]\] where the new Event fires whenever any of the inner events fire

    Definition Classes
    FlattenCollectionCompat
  36. implicit def traversableSignals[B, T[U] <: TraversableLike[U, T[U]], Sig[A1] <: Signal[A1]](implicit ticket: CreationTicket, cbf: CanBuildFrom[T[_], B, T[B]]): Flatten[Signal[T[Sig[B]]], Signal[T[B]]]

    Permalink

    Flatten a Signal[Traversable[Signal[B]\]\] into a Signal[Traversable[B]\] where the new Signal updates whenever any of the inner or the outer signal updates

    Flatten a Signal[Traversable[Signal[B]\]\] into a Signal[Traversable[B]\] where the new Signal updates whenever any of the inner or the outer signal updates

    Definition Classes
    FlattenCollectionCompat
  37. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  38. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  39. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from Operators

Inherited from ObserveBundle

Inherited from Sources

Inherited from FlattenApi

Inherited from FlattenCollectionCompat

Inherited from SignalBundle

Inherited from SignalCompatBundle

Inherited from EventBundle

Inherited from EventCompatBundle

Inherited from ReadableMacroBundle

Inherited from DefaultImplementations

Inherited from AnyRef

Inherited from Any

Create new reactives

Update multiple reactives

Advanced functions used when extending REScala

Methods and type aliases for advanced usages, these are most relevant to abstract over multiple scheduler implementations.

Ungrouped