class StateDesignPattern::BaseState

Attributes

state_machine[R]

Public Class Methods

def_action(action_name) click to toggle source
# File lib/state_design_pattern/base_state.rb, line 21
def self.def_action(action_name)
  define_method(action_name) do |*args|
    raise IllegalStateException
  end
end
def_actions(*actions) click to toggle source
# File lib/state_design_pattern/base_state.rb, line 11
def self.def_actions(*actions)
  define_method(:actions) do
    actions
  end

  actions.each do |action|
    def_action(action)
  end
end
new(state_machine) click to toggle source
# File lib/state_design_pattern/base_state.rb, line 7
def initialize(state_machine)
  @state_machine = state_machine
end