instance method fire

Ruby on Rails 2.3.18

Since v2.2.3 Last seen in v2.3.18

Available in: v2.2.3 v2.3.18

Signature

fire(obj, to_state = nil, *args)

No documentation comment.

Parameters

obj req
to_state opt = nil
args rest
Source
# File activemodel/lib/active_model/state_machine/event.rb, line 22
      def fire(obj, to_state = nil, *args)
        transitions = @transitions.select { |t| t.from == obj.current_state(@machine ? @machine.name : nil) }
        raise InvalidTransition if transitions.size == 0

        next_state = nil
        transitions.each do |transition|
          next if to_state && !Array(transition.to).include?(to_state)
          if transition.perform(obj)
            next_state = to_state || Array(transition.to).first
            transition.execute(obj, *args)
            break
          end
        end
        next_state
      end

Defined in activemodel/lib/active_model/state_machine/event.rb line 22 · View on GitHub · Improve this page · Find usages on GitHub

Defined in ActiveModel::StateMachine::Event

Type at least 2 characters to search.

↑↓ navigate · open · esc close