WritableSignal

trait WritableSignal[A] extends Signal[A] with WritableObservable[A]
trait Signal[A]
trait SignalSource[A]
trait Observable[A]
trait BaseObservable[[A] =>> Signal[A], A]
trait Named
trait Source[A]
class Object
trait Matchable
class Any
class CombineSignalN[A, Out]
class CombineSignal2[T1, T2, Out]
class CombineSignal3[T1, T2, T3, Out]
class CombineSignal4[T1, T2, T3, T4, Out]
class CombineSignal5[T1, T2, T3, T4, T5, Out]
class CombineSignal6[T1, T2, T3, T4, T5, T6, Out]
class CombineSignal7[T1, T2, T3, T4, T5, T6, T7, Out]
class CombineSignal8[T1, T2, T3, T4, T5, T6, T7, T8, Out]
class CombineSignal9[T1, T2, T3, T4, T5, T6, T7, T8, T9, Out]
class SampleCombineSignalN[A, Out]
class SampleCombineSignal2[T0, T1, Out]
class SampleCombineSignal3[T0, T1, T2, Out]
class SampleCombineSignal4[T0, T1, T2, T3, Out]
class SampleCombineSignal5[T0, T1, T2, T3, T4, Out]
class SampleCombineSignal6[T0, T1, T2, T3, T4, T5, Out]
class SampleCombineSignal7[T0, T1, T2, T3, T4, T5, T6, Out]
class SampleCombineSignal8[T0, T1, T2, T3, T4, T5, T6, T7, Out]
class SampleCombineSignal9[T0, T1, T2, T3, T4, T5, T6, T7, T8, Out]
class SwitchSignal[A]
class FoldLeftSignal[A, B]
class MapSignal[I, O]
class DerivedVarSignal[A, B]
class Val[A]
class FutureSignal[A]

Value members

Abstract methods

protected def initialValue: Try[A]

Evaluate initial value of this Signal. This method must only be called once, when this value is first needed. You should override this method as def (no val or lazy val) to avoid holding a reference to the initial value beyond the duration of its relevance.

Evaluate initial value of this Signal. This method must only be called once, when this value is first needed. You should override this method as def (no val or lazy val) to avoid holding a reference to the initial value beyond the duration of its relevance.

Concrete methods

final override protected def fireError(nextError: Throwable, transaction: Transaction): Unit
Definition Classes
override protected def fireTry(nextValue: Try[A], transaction: Transaction): Unit

Signal propagates only if its value has changed

Signal propagates only if its value has changed

Definition Classes
final override protected def fireValue(nextValue: A, transaction: Transaction): Unit
Definition Classes
protected def setCurrentValue(newValue: Try[A]): Unit

Inherited methods

override def addObserver(observer: Observer[A])(owner: Owner): Subscription
Definition Classes
Inherited from
WritableObservable
Inherited from
Signal
def compose[B](operator: Signal[A] => Signal[B]): Signal[B]
Value Params
operator

Note: Must not throw!

Inherited from
Signal
def composeAll[B](changesOperator: EventStream[A] => EventStream[B], initialOperator: Try[A] => Try[B]): Signal[B]
Value Params
changesOperator

Note: Must not throw!

initialOperator

Note: Must not throw!

Inherited from
Signal
def composeChanges[AA >: A](operator: EventStream[A] => EventStream[AA]): Signal[AA]
Value Params
operator

Note: Must not throw!

Inherited from
Signal
override def debugWith(debugger: Debugger[A]): Signal[A]
Definition Classes
Inherited from
Signal
protected def defaultDisplayName: String

This is the method that subclasses override to preserve the user's ability to set custom display names.

This is the method that subclasses override to preserve the user's ability to set custom display names.

Inherited from
Named
final def displayName: String
Inherited from
Named
@inline
def flatMap[B, Inner[_], Output <: ([_] =>> Observable[_])](compose: A => Inner[B])(strategy: FlattenStrategy[[A] =>> Signal[A], Inner, Output]): Output[B]
Value Params
compose

Note: guarded against exceptions

Inherited from
BaseObservable
def foldLeft[B](makeInitial: A => B)(fn: (B, A) => B): Signal[B]
Value Params
fn

Note: guarded against exceptions

makeInitial

Note: guarded against exceptions

Inherited from
Signal
def foldLeftRecover[B](makeInitial: Try[A] => Try[B])(fn: (Try[B], Try[A]) => Try[B]): Signal[B]
Value Params
fn

(currentValue, nextParentValue) => nextValue

makeInitial

currentParentValue => initialValue Note: must not throw

Inherited from
Signal
def foreach(onNext: A => Unit)(owner: Owner): Subscription

Create an external observer from a function and subscribe it to this observable.

Create an external observer from a function and subscribe it to this observable.

Note: since you won't have a reference to the observer, you will need to call Subscription.kill() to unsubscribe

Inherited from
BaseObservable
protected def isStarted: Boolean
Inherited from
BaseObservable
override def map[B](project: A => B): Signal[B]
Value Params
project

Note: guarded against exceptions

Definition Classes
Inherited from
Signal
def mapTo[B](value: => B): Signal[B]

value is passed by name, so it will be evaluated whenever the Observable fires. Use it to sample mutable values (e.g. myInput.ref.value in Laminar).

value is passed by name, so it will be evaluated whenever the Observable fires. Use it to sample mutable values (e.g. myInput.ref.value in Laminar).

See also: mapToStrict

Value Params
value

Note: guarded against exceptions

Inherited from
BaseObservable
def mapToStrict[B](value: B): Signal[B]

value is evaluated strictly, only once, when this method is called.

value is evaluated strictly, only once, when this method is called.

See also: mapTo

Inherited from
BaseObservable
override protected def numAllObservers: Int
Definition Classes
Inherited from
WritableObservable
def observe(owner: Owner): OwnedSignal[A]

Add a noop observer to this signal to ensure that it's started. This lets you access .now and .tryNow on the resulting StrictSignal.

Add a noop observer to this signal to ensure that it's started. This lets you access .now and .tryNow on the resulting StrictSignal.

You can use myStream.toWeakSignal.observe.tryNow() to read the last emitted value from event streams just as well.

Inherited from
Signal
protected def onStop(): Unit

This method is fired when this observable stops working (listening for parent events and/or firing its own events), that is, when it loses its last Observer (internal or external).

This method is fired when this observable stops working (listening for parent events and/or firing its own events), that is, when it loses its last Observer (internal or external).

onStop can potentially be called multiple times, the second time being after it has started again (see onStart).

Inherited from
BaseObservable
override def recover[B >: A](pf: PartialFunction[Throwable, Option[B]]): Signal[B]
Value Params
pf

Note: guarded against exceptions

Definition Classes
Inherited from
Signal
override def recoverToTry: Signal[Try[A]]
Definition Classes
Inherited from
Signal
def setDisplayName(name: String): WritableSignal[A]

Set the display name for this instance (observable or observer).

Set the display name for this instance (observable or observer).

  • This method modifies the instance and returns this. It does not create a new instance.
  • New name you set will override the previous name, if any. This might change in the future. For the sake of sanity, don't call this more than once for the same instance.
  • If display name is set, toString will output it instead of the standard type@hashcode string
Inherited from
Named
override def toObservable: Signal[A]
Definition Classes
Inherited from
Signal
def toSignalIfStream[B >: A](ifStream: EventStream[A] => Signal[B]): Signal[B]
Inherited from
BaseObservable
def toStreamIfSignal[B >: A](ifSignal: Signal[A] => EventStream[B]): EventStream[B]
Inherited from
BaseObservable
final override def toString: String

Override defaultDisplayName instead of this, if you need to.

Override defaultDisplayName instead of this, if you need to.

Definition Classes
Named -> Any
Inherited from
Named
def toWeakSignal: Signal[Option[A]]

Convert this observable to a signal of Option[A]. If it is a stream, set initial value to None.

Convert this observable to a signal of Option[A]. If it is a stream, set initial value to None.

Inherited from
BaseObservable

Concrete fields

protected var maybeLastSeenCurrentValue: UndefOr[Try[A]]

Inherited fields

Note: Observer can be added more than once to an Observable. If so, it will observe each event as many times as it was added.

Note: Observer can be added more than once to an Observable. If so, it will observe each event as many times as it was added.

Inherited from
WritableObservable

Note: This is enforced to be a Set outside of the type system #performance

Note: This is enforced to be a Set outside of the type system #performance

Inherited from
WritableObservable