Pulse

rescala.operator.Pulse
See thePulse companion object
sealed trait Pulse[+P]

Pulse that stores a current value and can also indicate a potentially change to an updated value. A pulse may indicate that no current value has been set yet but updates must always contain a value.

Attributes

P

Stored value type of the Pulse

Companion:
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object NoChange.type
class Value[P]

Members list

Concise view

Value members

Concrete methods

def collect[U](pf: PartialFunction[P, U]): Pulse[U]
def filter(p: P => Boolean): Pulse[P]

If the pulse indicates a change: Applies a filter function to the updated value of the pulse. Based on the filter function, the updated value is retained or an empty pulse is returned. If the pulse doesn't indicate a change: Returns an empty pulse indicating no change.

If the pulse indicates a change: Applies a filter function to the updated value of the pulse. Based on the filter function, the updated value is retained or an empty pulse is returned. If the pulse doesn't indicate a change: Returns an empty pulse indicating no change.

Attributes

p

Filter function to be applied to the updated pulse value

Returns:

A pulse with the updated pulse value if the filter function returns true, an empty pulse otherwise

def flatMap[Q](f: P => Pulse[Q]): Pulse[Q]

If the pulse indicates a change: Applies a function to the updated value. The function has to return a new pulse that is returned by this function. If the pulse doesn't indicate a change: Returns an empty pulse indicating no change.

If the pulse indicates a change: Applies a function to the updated value. The function has to return a new pulse that is returned by this function. If the pulse doesn't indicate a change: Returns an empty pulse indicating no change.

Attributes

Q

Value type of the pulse returned by the applied function

f

Function to be applied on the updated pulse value

Returns:

Pulse returned by the applied function or an empty pulse if there is no updated value

def get: P
def getOrElse[U >: P](default: U): U
final def isChange: Boolean

Checks if the pulse indicates a change

Checks if the pulse indicates a change

Attributes

Returns:

True if the pulse indicates a change, false if not

def map[Q](f: P => Q): Pulse[Q]

If the pulse indicates a change: Applies a function to the updated value of the pulse and returns a new pulse indicating a change to this updated value. If the pulse doesn't indicate a change: Returns an empty pulse indicating no change.

If the pulse indicates a change: Applies a function to the updated value of the pulse and returns a new pulse indicating a change to this updated value. If the pulse doesn't indicate a change: Returns an empty pulse indicating no change.

Attributes

Q

Result type of the applied function

f

Function to be applied on the updated pulse value

Returns:

Pulse indicating the update performed by the applied function or an empty pulse if there is no updated value

converts the pulse to an option of try

converts the pulse to an option of try

Attributes