final class DebuggableObserver[A] extends AnyVal
This implicit class provides debug* methods for observers.
Every debug* method creates a new observer that performs the specified behaviour and then calls the original observer.
Note: type inference doesn't work on Observer debug* methods, so you need to provide the AA type param (it should be same as A).
- Alphabetic
- By Inheritance
- DebuggableObserver
- AnyVal
- Any
- Hide All
- Show All
- Public
- Protected
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- Any
- final def ##: Int
- Definition Classes
- Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def debugBreak(when: (Try[A]) => Boolean = always): Observer[A]
Trigger JS debugger for emitted events and errors if
whenpasses - def debugBreakErrors(when: (Throwable) => Boolean = always): Observer[A]
Trigger JS debugger for emitted errors (but not events) if
whenpasses - def debugBreakEvents(when: (A) => Boolean = always): Observer[A]
Trigger JS debugger for emitted events (but not errors) if
whenpasses - def debugLog(when: (Try[A]) => Boolean = always, useJsLogger: Boolean = false): Observer[A]
Log emitted events and errors if
whencondition passes, using dom.console.log ifuseJsLoggeris true. - def debugLogErrors(when: (Throwable) => Boolean = always): Observer[A]
Log emitted errors (but not regular events) if
whencondition passes - def debugLogEvents(when: (A) => Boolean = always, useJsLogger: Boolean = false): Observer[A]
Log emitted events (but not errors) if
whencondition passes, using dom.console.log ifuseJsLoggeris true. - def debugSpy(fn: (Try[A]) => Unit): Observer[A]
Execute fn on every emitted event or error
- def debugSpyErrors(fn: (Throwable) => Unit): Observer[A]
Execute fn on every emitted error (but not regular events)
- def debugSpyEvents(fn: (A) => Unit): Observer[A]
Execute fn on every emitted event (but not error)
- def debugWithName(displayName: String): Observer[A]
Create a new observer with a displayName, that sends all events to the original observer.
Create a new observer with a displayName, that sends all events to the original observer. This is different from
setDisplayName.If you say
observer.debugWithName("foo").debugLog(), the displayName used by the logging observer will be "foo" verbatim, whereas if you sayobserver.setDisplayName("foo").debugLog(), the logger's displayName will be "foo|Debug" – with a suffix – to differentiate it from the "foo" displayName ofobserveritself. - def getClass(): Class[_ <: AnyVal]
- Definition Classes
- AnyVal → Any
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def log(action: String, value: Any, useJsLogger: Boolean): Unit
- Attributes
- protected[this]
- val observer: Observer[A]
- def toString(): String
- Definition Classes
- Any