InternalTransition

Defines transition API for internal library usage. All transitions must implement this interface. This is safe to cast any Transition to InternalTransition by design.

Inheritors

Properties

Link copied to clipboard
abstract var argument: Any?

This parameter may be used to pass arbitrary data with a transition to targetState. This argument may be set from transition listener. Such transition must have only one listener that sets the argument.

Link copied to clipboard
abstract val eventMatcher: EventMatcher<E>
Link copied to clipboard
Link copied to clipboard
abstract val metaInfo: MetaInfo?
Link copied to clipboard
abstract val name: String?
Link copied to clipboard
abstract override val sourceState: InternalState
Link copied to clipboard
abstract val type: TransitionType

Functions

Link copied to clipboard
open suspend override fun accept(visitor: CoVisitor)
open override fun accept(visitor: Visitor)
Link copied to clipboard
abstract fun <L : Transition.Listener> addListener(listener: L): L
Link copied to clipboard
abstract suspend fun isMatchingEvent(event: Event): Boolean

Checks if the event matches this Transition

Link copied to clipboard
inline fun <E : Event> Transition<E>.onComplete(crossinline block: suspend (activeStates: Set<IState>, TransitionParams<E>) -> Unit): Transition.Listener
Link copied to clipboard
inline fun <E : Event> Transition<E>.onTriggered(crossinline block: suspend (TransitionParams<E>) -> Unit): Transition.Listener
Link copied to clipboard
abstract fun removeListener(listener: Transition.Listener)