Options
All
  • Public
  • Public/Protected
  • All
Menu

Class PseudoState

A pseudo state is a transient elemement within a state machine, once entered it will evaluate outgoing transitions and attempt to exit.

Hierarchy

  • PseudoState

Implements

Index

Constructors

constructor

  • Creates a new instance of the PseudoState class.

    Parameters

    • name: string

      The name of the pseudo state.

    • parent: State | Region

      The parent region of the pseudo state; a state may also be specified in which case the state's default region will be used as the parent region.

    • Default value kind: PseudoStateKind = PseudoStateKind.Initial

      The kind of pseudo state; this defines its behaviour and use. See PseudoStateKind for more information.

    Returns PseudoState

Properties

elseTransition

elseTransition: Transition | undefined

The else transition that may be used by branch pseudo states; saves the costly process of searching for it at runtime.

internal

kind

The kind of pseudo state; this defines its behaviour and use. See PseudoStateKind for more information.

name

name: string

The name of the pseudo state.

outgoing

outgoing: Array<Transition> = []

The outgoing transitions available from this vertex.

internal

parent

parent: Region

The parent element of the pseudo state.

qualifiedName

qualifiedName: string

The fully qualified name of the vertex including its parent's qualified name.

Methods

else

  • else<TTrigger>(target: Vertex): Transition<TTrigger>
  • Creates an else transition from Junction or Choice pseudo states.

    Type parameters

    • TTrigger

    Parameters

    Returns Transition<TTrigger>

    Returns the newly created transition.

external

  • external<TTrigger>(target: Vertex): Transition<TTrigger>
  • A pseudonym for PseudoState.to provided for backwards compatability.

    deprecated

    Use PseudoState.to. This method will be removed in the v8.0 release.

    Type parameters

    • TTrigger

    Parameters

    Returns Transition<TTrigger>

    Returns the newly created transition.

getChoiceTransition

  • getChoiceTransition(trigger: any): Transition | undefined
  • Returns the transition to take given a trigger event at choice pseudo states.

    internal

    Parameters

    • trigger: any

      The trigger event.

    Returns Transition | undefined

    Returns the transition to take in response to the trigger.

getOtherTransition

  • getOtherTransition(trigger: any): Transition | undefined
  • Returns the transition to take given a trigger event at non-choice pseudo ststes.

    internal

    Parameters

    • trigger: any

      The trigger event.

    Returns Transition | undefined

    Returns the transition to take in response to the trigger.

getTransition

  • getTransition(trigger: any): Transition
  • Returns the transition to take given a trigger event.

    throws

    Throws an Error if the state machine model is ill defined.

    internal

    Parameters

    • trigger: any

      The trigger event.

    Returns Transition

    Returns the transition to take in response to the trigger.

isHistory

  • isHistory(): boolean
  • Tests a pseudo state to see if is is a history pseudo state

    Returns boolean

    Returns true if the pseudo state is of the deep or shallow history kind

on

  • on<TTrigger>(type: Constructor<TTrigger>): Transition<TTrigger>

to

  • to<TTrigger>(target: Vertex): Transition<TTrigger>
  • Creates a new transition with a target vertex.

    remarks

    Once creates with the [[Vertex.tn]] method, the transition can be enhanced using the fluent API calls of Transition.on Transition.if, Transition.local and Transition.do. If an event test is needed, create the transition with the on method.

    Type parameters

    • TTrigger

    Parameters

    Returns Transition<TTrigger>

    Returns the newly created transition.

toString

  • toString(): string

when

  • when<TTrigger>(guard: Predicate<TTrigger>): Transition<TTrigger>
  • Creates a new transition with a guard condition.

    Type parameters

    • TTrigger

    Parameters

    Returns Transition<TTrigger>

Generated using TypeDoc