scalaz.stream.async.mutable

Signal

trait Signal[A] extends immutable.Signal[A]

A signal whose value may be set asynchronously. Provides continuous and discrete streams for responding to changes to this value.

Source
Signal.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Signal
  2. Signal
  3. AnyRef
  4. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def changed: Process[Task, Boolean]

    Returns a continuous stream, indicating whether the value has changed.

    Returns a continuous stream, indicating whether the value has changed. This will spike true once for each time the value of Signal was changed. It will always start with true when the process is run or when the Signal is set for the first time.

    Definition Classes
    Signal
  2. abstract def changes: Process[Task, Unit]

    Returns the discrete version of changed.

    Returns the discrete version of changed. Will emit Unit when the value is changed.

    Definition Classes
    Signal
  3. abstract def compareAndSet(f: (Option[A]) ⇒ Option[A]): Task[Option[A]]

    Asynchronously sets the current value of this Signal and returns new value os this Signal.

    Asynchronously sets the current value of this Signal and returns new value os this Signal. If this Signal has not been set yet, the Task will return None and value is set. If this Signal is finished Task will fail with End exception. If this Signal is failed Task will fail with Signal failure exception.

    Furthermore if f results in evaluating to None, this Task is no-op and will return current value of the Signal.

  4. abstract def continuous: Process[Task, A]

    Returns the continuous version of this signal, always equal to the current A inside value.

    Returns the continuous version of this signal, always equal to the current A inside value. Note that this may not see all changes of A as it gets always current fresh A at every request.

    Definition Classes
    Signal
  5. abstract def discrete: Process[Task, A]

    Returns the discrete version of this signal, updated only when value is changed.

    Returns the discrete version of this signal, updated only when value is changed. Value may change several times between reads, but it is guaranteed this will always get latest known value after any change. If you want to be notified about every single change use async.queue for signalling.

    It will emit the current value of the Signal after being run or when the signal is set for the first time

    Definition Classes
    Signal
  6. abstract def get: Task[A]

    Asynchronously get the current value of this Signal

  7. abstract def getAndSet(a: A): Task[Option[A]]

    Asynchronously sets the current value of this Signal and returns previous value of the Signal.

    Asynchronously sets the current value of this Signal and returns previous value of the Signal. If this Signal has not been set yet, the Task will return None and value is set. If this Signal is finished Task will fail with End exception. If this Signal is failed Task will fail with Signal failure exception.

  8. abstract def set(a: A): Task[Unit]

    Sets the value of this Signal.

  9. abstract def sink: Sink[Task, Msg[A]]

    Returns sink that can be used to set this signal

Concrete Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def close: Task[Unit]

    Indicate that the value is no longer valid.

    Indicate that the value is no longer valid. Any attempts to set or get this Signal after a close will fail with Terminated(End) exception. This Signal is finished from now on.

    Running this task once the Signal is failed or finished is no-op and this task will not fail.

  9. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  10. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  11. def fail(error: Throwable): Task[Unit]

    Raise an asynchronous error for readers of this Signal.

    Raise an asynchronous error for readers of this Signal. Any attempts to set or get this Ref after the fail will result in task failing with Terminated(Error(errr)). This Signal is failed from now on.

    Running this task once the Signal is failed or finished is no-op and this task will not fail.

  12. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  13. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  14. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  15. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  16. def kill: Task[Unit]

    Indicate that the value is no longer valid.

    Indicate that the value is no longer valid. Any attempts to set or get this Signal after a close will fail with Terminated(Kill) exception. This Signal is finished from now on.

    Running this task once the Signal is failed or finished is no-op and this task will not fail.

  17. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  18. final def notify(): Unit

    Definition Classes
    AnyRef
  19. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  20. def refresh: Task[Unit]

    Asynchronously refreshes the value of the signal, keep the value of this Signal the same, but notify any listeners.

    Asynchronously refreshes the value of the signal, keep the value of this Signal the same, but notify any listeners. If the Signal is not yet set, this is no-op

  21. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  22. def toString(): String

    Definition Classes
    AnyRef → Any
  23. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from immutable.Signal[A]

Inherited from AnyRef

Inherited from Any

Ungrouped