final case class Widened[T, U >: T](behavior: Behavior[T], matcher: PartialFunction[U, T]) extends Behavior[U] with Product with Serializable
Widen the wrapped Behavior by placing a funnel in front of it: the supplied PartialFunction decides which message to pull in (those that it is defined at) and may transform the incoming message to place them into the wrapped Behavior’s type hierarchy. Signals are not transformed.
- Source
- ScalaDSL.scala
- Alphabetic
- By Inheritance
- Widened
- Serializable
- Serializable
- Product
- Equals
- Behavior
- AnyRef
- Any
- by BehaviorDecorators
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Instance Constructors
- new Widened(behavior: Behavior[T], matcher: PartialFunction[U, T])
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
def
&&(other: Behavior[U]): Behavior[U]
Combine the two behaviors such that incoming messages are distributed to both of them, each one evolving its state independently.
Combine the two behaviors such that incoming messages are distributed to both of them, each one evolving its state independently.
- Implicit
- This member is added by an implicit conversion from Widened[T, U] to BehaviorDecorators[U] performed by method BehaviorDecorators in akka.typed.ScalaDSL.
- Definition Classes
- BehaviorDecorators
- def +(other: String): String
- def ->[B](y: B): (Widened[T, U], B)
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
- val behavior: Behavior[T]
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
- def ensuring(cond: (Widened[T, U]) ⇒ Boolean, msg: ⇒ Any): Widened[T, U]
- def ensuring(cond: (Widened[T, U]) ⇒ Boolean): Widened[T, U]
- def ensuring(cond: Boolean, msg: ⇒ Any): Widened[T, U]
- def ensuring(cond: Boolean): Widened[T, U]
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
- def formatted(fmtstr: String): String
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
management(ctx: ActorContext[U], msg: Signal): Behavior[U]
Process an incoming Signal and return the next behavior.
Process an incoming Signal and return the next behavior. This means that all lifecycle hooks, ReceiveTimeout, Terminated and Failed messages can initiate a behavior change.
The returned behavior can in addition to normal behaviors be one of the canned special objects:
* returning
Stopped
will terminate this Behavior * returningSame
designates to reuse the current Behavior * returningUnhandled
keeps the same Behavior and signals that the message was not yet handledCode calling this method should use Behavior$
canonicalize
to replace the special objects with real Behaviors. - val matcher: PartialFunction[U, T]
-
def
message(ctx: ActorContext[U], msg: U): Behavior[U]
Process an incoming message and return the next behavior.
Process an incoming message and return the next behavior.
The returned behavior can in addition to normal behaviors be one of the canned special objects:
* returning
Stopped
will terminate this Behavior * returningSame
designates to reuse the current Behavior * returningUnhandled
keeps the same Behavior and signals that the message was not yet handledCode calling this method should use Behavior$
canonicalize
to replace the special objects with real Behaviors. -
def
narrow[U <: U]: Behavior[U]
Narrow the type of this Behavior, which is always a safe operation.
Narrow the type of this Behavior, which is always a safe operation. This method is necessary to implement the contravariant nature of Behavior (which cannot be expressed directly due to type inference problems).
- Definition Classes
- Behavior
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- Widened → AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
widen[U >: T](matcher: PartialFunction[U, U]): Behavior[U]
Widen the type of this Behavior by providing a filter function that permits only a subtype of the widened set of messages.
Widen the type of this Behavior by providing a filter function that permits only a subtype of the widened set of messages.
- Implicit
- This member is added by an implicit conversion from Widened[T, U] to BehaviorDecorators[U] performed by method BehaviorDecorators in akka.typed.ScalaDSL.
- Definition Classes
- BehaviorDecorators
-
def
||(other: Behavior[U]): Behavior[U]
Combine the two behaviors such that incoming messages are given first to the left behavior and are then only passed on to the right behavior if the left one returned Unhandled.
Combine the two behaviors such that incoming messages are given first to the left behavior and are then only passed on to the right behavior if the left one returned Unhandled.
- Implicit
- This member is added by an implicit conversion from Widened[T, U] to BehaviorDecorators[U] performed by method BehaviorDecorators in akka.typed.ScalaDSL.
- Definition Classes
- BehaviorDecorators
- def →[B](y: B): (Widened[T, U], B)
Shadowed Implicit Value Members
-
val
behavior: Behavior[U]
- Implicit
- This member is added by an implicit conversion from Widened[T, U] to BehaviorDecorators[U] performed by method BehaviorDecorators in akka.typed.ScalaDSL.
- Shadowing
- This implicitly inherited member is shadowed by one or more members in this class.
To access this member you can use a type ascription:(widened: BehaviorDecorators[U]).behavior
- Definition Classes
- BehaviorDecorators