Class: Dotpretty::StateMachine::StateDetails

Inherits:
Object
  • Object
show all
Defined in:
lib/dotpretty/state_machine/state_details.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(transitions:, exit_action:, entry_action:) ⇒ StateDetails

Returns a new instance of StateDetails.



5
6
7
8
9
# 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

Instance Attribute Details

#entry_actionObject

Returns the value of attribute entry_action.



11
12
13
# File 'lib/dotpretty/state_machine/state_details.rb', line 11

def entry_action
  @entry_action
end

Instance Method Details

#trigger(event, &block) ⇒ Object



14
15
16
17
# 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