class Dotpretty::StateMachine::StateDetails

Attributes

entry_action[RW]
exit_action[RW]
transitions[RW]

Public Class Methods

new(transitions:, exit_action:, entry_action:) click to toggle source
# File lib/dotpretty/state_machine/state_details.rb, line 5
def initialize(transitions:, exit_action:, entry_action:)
  self.entry_action = entry_action
  self.exit_action = exit_action
  self.transitions = transitions
end

Public Instance Methods

trigger(event, &block) click to toggle source
# File lib/dotpretty/state_machine/state_details.rb, line 14
def trigger(event, &block)
  transition = transitions[event]
  block.call(transition, exit_action) if transition
end