Event

rescala.operator.EventBundle.Event
trait Event[+T] extends EventCompat[T] with Disconnectable

Events only propagate a value when they are changing, when the system is at rest, events have no values.

Note: We hide implicit parameters of the API in the documentation. They are used to ensure correct creation, and you normally do not have to worry about them, except if you accidentally call the implicit parameter list, in which cas you may get cryptic errors. This is a scala limitation. We also hide the internal state parameter of passed and returned events.

Attributes

T

Value type of the event occurrences.

Graph
Supertypes
trait EventCompat[T]
trait ReadAs[State, Option[T]]
trait ReSource
class Object
trait Matchable
class Any
Known subtypes
class EventImpl[T]
class Evt[T]

Members list

Concise view

accessor

final def +=(handler: T => Unit)(implicit ticket: CreationTicket): Disconnectable

Adds an observer.

Adds an observer.

Attributes

See also:

observe

final def apply(): A

Makes the enclosing reactive expression depend on the current value of the reactive. Is an alias for value.

Makes the enclosing reactive expression depend on the current value of the reactive. Is an alias for value.

Attributes

See also:

value

Inherited from:
MacroAccess
final def observe(onValue: T => Unit, onError: Throwable => Unit, fireImmediately: Boolean)(implicit ticket: CreationTicket): Disconnectable

Add an observer.

Add an observer.

Attributes

Returns:

the resulting rescala.operator.ObserveBundle.Observe can be used to remove the observer.

final def value: A

Makes the enclosing reactive expression depend on the current value of the reactive. Is an alias for rescala.macros.MacroAccess.apply.

Makes the enclosing reactive expression depend on the current value of the reactive. Is an alias for rescala.macros.MacroAccess.apply.

Attributes

See also:

apply

Inherited from:
MacroAccess

Event operators

final infix inline def &&(inline expression: T => Boolean)(implicit ticket: CreationTicket): Event[T]

Filters the event, only propagating the value when the filter is true.

Filters the event, only propagating the value when the filter is true.

Attributes

Inherited from:
EventCompat
final def \[U](except: Event[U])(implicit ticket: CreationTicket): Event[T]

Propagates the event only when except does not fire.

Propagates the event only when except does not fire.

Attributes

final def and[U, R](other: Event[U])(merger: (T, U) => R)(implicit ticket: CreationTicket): Event[R]

Merge the event with the other, if both fire simultaneously.

Merge the event with the other, if both fire simultaneously.

Attributes

final inline def collect[U](inline expression: PartialFunction[T, U])(implicit ticket: CreationTicket): Event[U]

Collects the results from a partial function

Collects the results from a partial function

Attributes

Inherited from:
EventCompat
final def dropParam(implicit ticket: CreationTicket): Event[Unit]

Drop the event parameter; equivalent to map((_: Any) => ())

Drop the event parameter; equivalent to map((_: Any) => ())

Attributes

final inline def filter(inline expression: T => Boolean)(implicit ticket: CreationTicket): Event[T]

Filters the event, only propagating the value when the filter is true.

Filters the event, only propagating the value when the filter is true.

Attributes

Inherited from:
EventCompat
final def flatten[R](implicit flatten: Flatten[Event[T], R]): R

Flattens the inner value.

Flattens the inner value.

Attributes

final inline def map[B](inline expression: T => B)(implicit ticket: CreationTicket): Event[B]

Transform the event.

Transform the event.

Attributes

Inherited from:
EventCompat
final def zip[U](other: Event[U])(implicit ticket: CreationTicket): Event[(T, U)]

Merge the event with the other into a tuple, if both fire simultaneously.

Merge the event with the other into a tuple, if both fire simultaneously.

Attributes

See also:

and

final def zipOuter[U](other: Event[U])(implicit ticket: CreationTicket): Event[(Option[T], Option[U])]

Merge the event with the other into a tuple, even if only one of them fired.

Merge the event with the other into a tuple, even if only one of them fired.

Attributes

final def ||[U >: T](other: Event[U])(implicit ticket: CreationTicket): Event[U]

Events disjunction. Propagates the values if any of the events fires. Only propagates the left event if both fire.

Events disjunction. Propagates the values if any of the events fires. Only propagates the left event if both fire.

Attributes

Event to Signal conversions

final def count()(implicit ticket: CreationTicket): Signal[Int]

Counts the occurrences of the event. The argument of the event is discarded. Always starts from 0 when the count is created (no matter how often the event has activated in the past).

Counts the occurrences of the event. The argument of the event is discarded. Always starts from 0 when the count is created (no matter how often the event has activated in the past).

Attributes

final def iterate[A](init: A)(f: A => A)(implicit ticket: CreationTicket): Signal[A]

Applies a function on the current value of the signal every time the event occurs, starting with the init value before the first event occurrence

Applies a function on the current value of the signal every time the event occurs, starting with the init value before the first event occurrence

Attributes

final def last[A >: T](n: Int)(implicit ticket: CreationTicket): Signal[LinearSeq[A]]

Returns a signal which holds the last n events in a list. At the beginning the list increases in size up to when n values are available

Returns a signal which holds the last n events in a list. At the beginning the list increases in size up to when n values are available

Attributes

final def latest[A >: T](init: A)(implicit ticket: CreationTicket): Signal[A]

returns a signal holding the latest value of the event.

returns a signal holding the latest value of the event.

Attributes

init

initial value of the returned signal

final def latest[A >: T]()(implicit ticket: CreationTicket): Signal[A]

returns a signal holding the latest value of the event.

returns a signal holding the latest value of the event.

Attributes

final def latestOption[A >: T]()(implicit ticket: CreationTicket): Signal[Option[A]]

Holds the latest value of an event as an Option, None before the first event occured

Holds the latest value of an event as an Option, None before the first event occured

Attributes

final def list[A >: T]()(implicit ticket: CreationTicket): Signal[List[A]]

collects events resulting in a variable holding a list of all values.

collects events resulting in a variable holding a list of all values.

Attributes

final def reduce[A](reducer: (=> A, => T) => A)(implicit ticket: CreationTicket): Signal[A]

reduces events with a given reduce function to create a Signal

reduces events with a given reduce function to create a Signal

Attributes

final def toggle[A](a: Signal[A], b: Signal[A])(implicit ticket: CreationTicket): Signal[A]

Switch back and forth between two signals on occurrence of event e

Switch back and forth between two signals on occurrence of event e

Attributes

internal

override def read(v: Value): Option[T]

Interprets the pulse of the event by converting to an option

Interprets the pulse of the event by converting to an option

Attributes

Definition Classes

conversion

final def fold[A](init: A)(op: (A, T) => A)(implicit ticket: CreationTicket): Signal[A]

Folds events with a given operation to create a Signal.

Folds events with a given operation to create a Signal.

Attributes

Inherited from:
EventCompat

Type members

Types

final override type State[V] = State[V]

Inherited types

type Value

Attributes

Inherited from:
ReSource

Value members

Concrete methods

final def recover[R >: T](onFailure: PartialFunction[Throwable, Option[R]])(implicit ticket: CreationTicket): Event[R]

Uses a partial function onFailure to recover an error carried by the event into a value when returning Some(value), or filters the error when returning None

Uses a partial function onFailure to recover an error carried by the event into a value when returning Some(value), or filters the error when returning None

Attributes

Inherited methods

inline def act[S](inline f: FoldState[S] ?=> T => S): Branch[S]
Extension method from EventBundle

Attributes

Inherited from:
EventCompatBundle

Attributes

Inherited from:
Disconnectable

Attributes

Inherited from:
ReSource

Implicits

Implicits

implicit def internalAccess(v: Value): Pulse[T]