trait Signal[+A] extends Observable[A] with BaseObservable[Signal, A] with SignalSource[A]
Signal is an Observable with a current value.
- Alphabetic
- By Inheritance
- Signal
- SignalSource
- Observable
- BaseObservable
- Named
- Source
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def addExternalObserver(observer: Observer[A], owner: Owner): Subscription
- Attributes
- protected[this]
- Definition Classes
- BaseObservable
- abstract def addInternalObserver(observer: InternalObserver[A]): Unit
Child observable should call this method on its parents when it is started.
Child observable should call this method on its parents when it is started. This observable calls onStart if this action has given it its first observer (internal or external).
- Attributes
- protected[airstream]
- Definition Classes
- BaseObservable
- abstract def addObserver(observer: Observer[A])(implicit owner: Owner): Subscription
Subscribe an external observer to this observable
Subscribe an external observer to this observable
- Definition Classes
- BaseObservable
- abstract def numAllObservers: Int
Total number of internal and external observers
Total number of internal and external observers
- Attributes
- protected
- Definition Classes
- BaseObservable
- abstract def removeExternalObserverNow(observer: Observer[A]): Unit
- Attributes
- protected[airstream]
- Definition Classes
- BaseObservable
- abstract def removeInternalObserverNow(observer: InternalObserver[A]): Unit
Child observable should call Transaction.removeInternalObserver(parent, childInternalObserver) when it is stopped.
Child observable should call Transaction.removeInternalObserver(parent, childInternalObserver) when it is stopped. This observable calls onStop if this action has removed its last observer (internal or external).
- Attributes
- protected[airstream]
- Definition Classes
- BaseObservable
- abstract val topoRank: Int
Note: Use Protected.topoRank(observable) to read another observable's topoRank if needed
Note: Use Protected.topoRank(observable) to read another observable's topoRank if needed
- Attributes
- protected
- Definition Classes
- BaseObservable
- abstract def tryNow(): Try[A]
Get the signal's current value
Get the signal's current value
- Attributes
- protected[airstream]
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def changes: EventStream[A]
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- def compose[B](operator: (Signal[A]) => Signal[B]): Signal[B]
- operator
Note: Must not throw!
- def composeAll[B](changesOperator: (EventStream[A]) => EventStream[B], initialOperator: (Try[A]) => Try[B]): Signal[B]
- changesOperator
Note: Must not throw!
- initialOperator
Note: Must not throw!
- def composeChanges[AA >: A](operator: (EventStream[A]) => EventStream[AA]): Signal[AA]
- operator
Note: Must not throw!
- def debugWith(debugger: Debugger[A]): Signal[A]
See also debug methods in com.raquo.airstream.debug.DebuggableObservable
See also debug methods in com.raquo.airstream.debug.DebuggableObservable
- Definition Classes
- Signal → BaseObservable
- 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.
- Attributes
- protected
- Definition Classes
- Named
- final def displayName: String
- Definition Classes
- Named
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def flatMap[B, Inner[_], Output[+_] <: Observable[_]](compose: (A) => Inner[B])(implicit strategy: FlattenStrategy[[+_]Signal[_], Inner, Output]): Output[B]
- compose
Note: guarded against exceptions
- Definition Classes
- BaseObservable
- Annotations
- @inline()
- def foldLeft[B](makeInitial: (A) => B)(fn: (B, A) => B): Signal[B]
- makeInitial
Note: guarded against exceptions
- fn
Note: guarded against exceptions
- def foldLeftRecover[B](makeInitial: (Try[A]) => Try[B])(fn: (Try[B], Try[A]) => Try[B]): Signal[B]
- makeInitial
currentParentValue => initialValue Note: must not throw
- fn
(currentValue, nextParentValue) => nextValue
- def foreach(onNext: (A) => Unit)(implicit 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
- Definition Classes
- BaseObservable
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isStarted: Boolean
- Attributes
- protected
- Definition Classes
- BaseObservable
- def map[B](project: (A) => B): Signal[B]
- project
Note: guarded against exceptions
- Definition Classes
- Signal → BaseObservable
- def mapTo[B](value: => B): Signal[B]
value
is passed by name, so it will be evaluated whenever the Observable fires.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
Note: guarded against exceptions
- Definition Classes
- 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
- Definition Classes
- BaseObservable
- val maybeDisplayName: UndefOr[String]
This name should identify the instance (observable or observer) uniquely enough for your purposes.
This name should identify the instance (observable or observer) uniquely enough for your purposes. You can read / write it to simplify debugging. Airstream uses this in
debugLog*
methods. In the future, we will expand on this. #TODO[Debug] We don't use this to its full potential yet.- Attributes
- protected[this]
- Definition Classes
- Named
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- def now(): A
Get the signal's current value
Get the signal's current value
- Attributes
- protected[airstream]
- Exceptions thrown
the
signal's error if its current value is an error
- def observe(implicit owner: Owner): OwnedSignal[A]
Add a noop observer to this signal to ensure that it's started.
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. - def onAddedExternalObserver(observer: Observer[A]): Unit
- Attributes
- protected
- Definition Classes
- Signal → BaseObservable
- def onStart(): Unit
Here we need to ensure that Signal's default value has been evaluated.
Here we need to ensure that Signal's default value has been evaluated. It is important because if a Signal gets started by means of its .changes stream acquiring an observer, nothing else would trigger this evaluation because initialValue is not directly used by the .changes stream. However, when the events start coming in, we will need this initialValue because Signal needs to know when its current value has changed.
- Attributes
- protected[this]
- Definition Classes
- Signal → BaseObservable
- 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).
- Attributes
- protected
- Definition Classes
- BaseObservable
- implicit def protectedAccessEvidence: Protected
- Attributes
- protected
- Definition Classes
- BaseObservable
- Annotations
- @inline()
- def recover[B >: A](pf: PartialFunction[Throwable, Option[B]]): Signal[B]
- pf
Note: guarded against exceptions
- Definition Classes
- Signal → BaseObservable
- def recoverIgnoreErrors: Signal[A]
- Definition Classes
- BaseObservable
- def recoverToTry: Signal[Try[A]]
Convert this to an observable that emits Failure(err) instead of erroring
Convert this to an observable that emits Failure(err) instead of erroring
- Definition Classes
- Signal → BaseObservable
- def setDisplayName(name: String): Signal.this.type
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- Definition Classes
- Named
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toObservable: Signal[A]
- Definition Classes
- Signal → SignalSource → Source
- def toSignalIfStream[B >: A](ifStream: (EventStream[A]) => Signal[B]): Signal[B]
- Definition Classes
- BaseObservable
- def toStreamIfSignal[B >: A](ifSignal: (Signal[A]) => EventStream[B]): EventStream[B]
- Definition Classes
- BaseObservable
- final def toString(): String
Override defaultDisplayName instead of this, if you need to.
Override defaultDisplayName instead of this, if you need to.
- Definition Classes
- Named → AnyRef → Any
- def toWeakSignal: Signal[Option[A]]
Convert this observable to a signal of Option[A].
Convert this observable to a signal of Option[A]. If it is a stream, set initial value to None.
- Definition Classes
- BaseObservable
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated