abstract class SignallingRef[F[_], A] extends Ref[F, A] with Signal[F, A]
Pure holder of a single value of type A
that can be both read
and updated in the effect F
.
The update methods have the same semantics as Ref, as well as
propagating changes to discrete
(with a last-update-wins policy
in case of very fast updates).
The access
method differs slightly from Ref
in that the update
function, in the presence of discrete
, can return false
and
need looping even without any other writers.
- Source
- Signal.scala
- Alphabetic
- By Inheritance
- SignallingRef
- Signal
- Ref
- RefSink
- RefSource
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new SignallingRef()
Abstract Value Members
- abstract def access: F[(A, (A) => F[Boolean])]
- Definition Classes
- Ref
- abstract def continuous: Stream[F, A]
Returns a stream of the current value of the signal.
Returns a stream of the current value of the signal. An element is always available -- on each pull, the current value is supplied.
- Definition Classes
- Signal
- abstract def discrete: Stream[F, A]
Returns a stream of the updates to this signal.
Returns a stream of the updates to this signal.
Updates that are very close together may result in only the last update appearing in the stream. If you want to be notified about every single update, use a
Queue
orChannel
instead.- Definition Classes
- Signal
- abstract def get: F[A]
Asynchronously gets the current value of this
Signal
.Asynchronously gets the current value of this
Signal
.- Definition Classes
- Signal
- abstract def modify[B](f: (A) => (A, B)): F[B]
- Definition Classes
- Ref
- abstract def modifyState[B](state: State[A, B]): F[B]
- Definition Classes
- Ref
- abstract def set(a: A): F[Unit]
- Definition Classes
- RefSink
- abstract def tryModify[B](f: (A) => (A, B)): F[Option[B]]
- Definition Classes
- Ref
- abstract def tryModifyState[B](state: State[A, B]): F[Option[B]]
- Definition Classes
- Ref
- abstract def tryUpdate(f: (A) => A): F[Boolean]
- Definition Classes
- Ref
- abstract def update(f: (A) => A): F[Unit]
- Definition Classes
- Ref
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 clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def getAndSet(a: A): F[A]
- Definition Classes
- Ref
- def getAndUpdate(f: (A) => A): F[A]
- Definition Classes
- Ref
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def mapK[G[_]](f: ~>[F, G])(implicit F: Functor[F]): Ref[G, A]
- Definition Classes
- Ref
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def updateAndGet(f: (A) => A): F[A]
- Definition Classes
- Ref
- 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