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
- All
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
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( ... ) @native() @HotSpotIntrinsicCandidate()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): 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[_]
- 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( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
Deprecated Value Members
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] ) @Deprecated
- Deprecated