Packages

c

com.raquo.airstream.combine

SampleCombineSignalN

class SampleCombineSignalN[A, Out] extends WritableSignal[Out] with CombineObservable[Out]

This signal emits the combined value when samplingSignal is updated.

When the combined signal emits, it looks up the current value of sampledSignals, but updates to those signals do not trigger updates to the combined stream.

Works similar to Rx's "withLatestFrom", except without glitches (see a diamond case test for this in GlitchSpec).

Linear Supertypes
CombineObservable[Out], SyncObservable[Out], WritableSignal[Out], WritableObservable[Out], Signal[Out], SignalSource[Out], Observable[Out], BaseObservable[[+_]Signal[_], Out], Named, Source[Out], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SampleCombineSignalN
  2. CombineObservable
  3. SyncObservable
  4. WritableSignal
  5. WritableObservable
  6. Signal
  7. SignalSource
  8. Observable
  9. BaseObservable
  10. Named
  11. Source
  12. AnyRef
  13. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new SampleCombineSignalN(samplingSignal: Signal[A], sampledSignals: Seq[Signal[A]], combinator: (Seq[A]) => Out)

    combinator

    Note: Must not throw.

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def addExternalObserver(observer: Observer[Out], owner: Owner): Subscription

    Subscribe an external observer to this observable

    Subscribe an external observer to this observable

    Attributes
    protected[this]
    Definition Classes
    WritableObservableBaseObservable
  5. def addInternalObserver(observer: InternalObserver[Out]): 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
    WritableObservableBaseObservable
  6. def addObserver(observer: Observer[Out])(implicit owner: Owner): Subscription

    Subscribe an external observer to this observable

    Subscribe an external observer to this observable

    Definition Classes
    WritableObservableBaseObservable
  7. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  8. def changes: EventStream[Out]
    Definition Classes
    Signal
  9. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  10. def combinedValue: Try[Out]

    This should only be called when all inputs are ready.

    This should only be called when all inputs are ready. It will throw if the required parent values are missing.

    Attributes
    protected[this]
    Definition Classes
    SampleCombineSignalNCombineObservable
  11. def compose[B](operator: (Signal[Out]) => Signal[B]): Signal[B]

    operator

    Note: Must not throw!

    Definition Classes
    Signal
  12. def composeAll[B](changesOperator: (EventStream[Out]) => EventStream[B], initialOperator: (Try[Out]) => Try[B]): Signal[B]

    changesOperator

    Note: Must not throw!

    initialOperator

    Note: Must not throw!

    Definition Classes
    Signal
  13. def composeChanges[AA >: Out](operator: (EventStream[Out]) => EventStream[AA]): Signal[AA]

    operator

    Note: Must not throw!

    Definition Classes
    Signal
  14. def debugWith(debugger: Debugger[Out]): Signal[Out]

    See also debug methods in com.raquo.airstream.debug.DebuggableObservable

    Definition Classes
    SignalBaseObservable
  15. 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
  16. final def displayName: String
    Definition Classes
    Named
  17. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  18. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  19. val externalObservers: ObserverList[Observer[Out]]

    Note: Observer can be added more than once to an Observable.

    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.

    Attributes
    protected
    Definition Classes
    WritableObservable
  20. final def fireError(nextError: Throwable, transaction: Transaction): Unit
    Attributes
    protected
    Definition Classes
    WritableSignalWritableObservable
  21. def fireTry(nextValue: Try[Out], transaction: Transaction): Unit

    Signal propagates only if its value has changed

    Signal propagates only if its value has changed

    Attributes
    protected
    Definition Classes
    WritableSignalWritableObservable
  22. final def fireValue(nextValue: Out, transaction: Transaction): Unit
    Attributes
    protected
    Definition Classes
    WritableSignalWritableObservable
  23. def flatMap[B, Inner[_], Output[+_] <: Observable[_]](compose: (Out) => Inner[B])(implicit strategy: FlattenStrategy[[+_]Signal[_], Inner, Output]): Output[B]

    compose

    Note: guarded against exceptions

    Definition Classes
    BaseObservable
    Annotations
    @inline()
  24. def foldLeft[B](makeInitial: (Out) => B)(fn: (B, Out) => B): Signal[B]

    makeInitial

    Note: guarded against exceptions

    fn

    Note: guarded against exceptions

    Definition Classes
    Signal
  25. def foldLeftRecover[B](makeInitial: (Try[Out]) => Try[B])(fn: (Try[B], Try[Out]) => Try[B]): Signal[B]

    makeInitial

    currentParentValue => initialValue Note: must not throw

    fn

    (currentValue, nextParentValue) => nextValue

    Definition Classes
    Signal
  26. def foreach(onNext: (Out) => 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
  27. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  28. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  29. def initialValue: Try[Out]

    Evaluate initial value of this Signal.

    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.

    Attributes
    protected[this]
    Definition Classes
    SampleCombineSignalNWritableSignal
  30. def inputsReady: Boolean

    Check whether inputs (parent observables' values) are all available to be combined.

    Check whether inputs (parent observables' values) are all available to be combined.

    Attributes
    protected[this]
    Definition Classes
    SampleCombineSignalNCombineObservable
  31. val internalObservers: ObserverList[InternalObserver[Out]]

    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

    Attributes
    protected
    Definition Classes
    WritableObservable
  32. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  33. def isStarted: Boolean
    Attributes
    protected
    Definition Classes
    BaseObservable
  34. def map[B](project: (Out) => B): Signal[B]

    project

    Note: guarded against exceptions

    Definition Classes
    SignalBaseObservable
  35. 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
  36. 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
  37. 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
  38. val maybeLastSeenCurrentValue: UndefOr[Try[Out]]
    Attributes
    protected
    Definition Classes
    WritableSignal
  39. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  40. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  41. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  42. def now(): Out

    Get the signal's current value

    Get the signal's current value

    Attributes
    protected[airstream]
    Definition Classes
    Signal
    Exceptions thrown

    the signal's error if its current value is an error

  43. def numAllObservers: Int

    Total number of internal and external observers

    Total number of internal and external observers

    Attributes
    protected
    Definition Classes
    WritableObservableBaseObservable
  44. def observe(implicit owner: Owner): OwnedSignal[Out]

    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.

    Definition Classes
    Signal
  45. def onAddedExternalObserver(observer: Observer[Out]): Unit
    Attributes
    protected
    Definition Classes
    SignalBaseObservable
  46. def onInputsReady(transaction: Transaction): Unit

    Implementations should call this instead of .fireValue() / .fireTry() Transaction will call syncFire when it's time, and that in turn will evaluate maybeCombinedValue and call .fireTry()

    Implementations should call this instead of .fireValue() / .fireTry() Transaction will call syncFire when it's time, and that in turn will evaluate maybeCombinedValue and call .fireTry()

    Attributes
    protected[this]
    Definition Classes
    CombineObservable
  47. def onStart(): Unit

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

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

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

    Attributes
    protected[this]
    Definition Classes
    CombineObservableBaseObservable
  48. 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[this]
    Definition Classes
    CombineObservableBaseObservable
  49. val parentObservers: Array[InternalParentObserver[_]]

    Parent observers are not immediately active.

    Parent observers are not immediately active. onStart/onStop regulates that.

    Attributes
    protected[this]
    Definition Classes
    CombineObservable
  50. implicit def protectedAccessEvidence: Protected
    Attributes
    protected
    Definition Classes
    BaseObservable
    Annotations
    @inline()
  51. def recover[B >: Out](pf: PartialFunction[Throwable, Option[B]]): Signal[B]

    pf

    Note: guarded against exceptions

    Definition Classes
    SignalBaseObservable
  52. def recoverIgnoreErrors: Signal[Out]
    Definition Classes
    BaseObservable
  53. def recoverToTry: Signal[Try[Out]]

    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
    SignalBaseObservable
  54. def removeExternalObserverNow(observer: Observer[Out]): Unit
    Attributes
    protected[airstream]
    Definition Classes
    WritableObservableBaseObservable
  55. def removeInternalObserverNow(observer: InternalObserver[Out]): 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
    WritableObservableBaseObservable
  56. def setCurrentValue(newValue: Try[Out]): Unit
    Attributes
    protected
    Definition Classes
    WritableSignal
  57. def setDisplayName(name: String): SampleCombineSignalN.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
  58. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  59. def toObservable: Signal[Out]
    Definition Classes
    SignalSignalSourceSource
  60. def toSignalIfStream[B >: Out](ifStream: (EventStream[Out]) => Signal[B]): Signal[B]
    Definition Classes
    BaseObservable
  61. def toStreamIfSignal[B >: Out](ifSignal: (Signal[Out]) => EventStream[B]): EventStream[B]
    Definition Classes
    BaseObservable
  62. 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
  63. def toWeakSignal: Signal[Option[Out]]

    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
  64. 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
    SampleCombineSignalNBaseObservable
  65. def tryNow(): Try[Out]

    Note: Initial value is only evaluated if/when needed (when there are observers)

    Note: Initial value is only evaluated if/when needed (when there are observers)

    Attributes
    protected[airstream]
    Definition Classes
    WritableSignalSignal
  66. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  67. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  68. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from CombineObservable[Out]

Inherited from SyncObservable[Out]

Inherited from WritableSignal[Out]

Inherited from WritableObservable[Out]

Inherited from Signal[Out]

Inherited from SignalSource[Out]

Inherited from Observable[Out]

Inherited from BaseObservable[[+_]Signal[_], Out]

Inherited from Named

Inherited from Source[Out]

Inherited from AnyRef

Inherited from Any

Ungrouped