Provides a set of helper methods for generating matchers
Represents a state that matches all known states in a machine.
class Vehicle state_machine do before_transition any => :parked, :do => lambda {...} before_transition all - :parked => all - :idling, :do => lambda {} event :park transition all => :parked end event :crash transition all - :parked => :stalled end end end
In the above example, all will match the following states since they are known:
parked
stalled
idling
# File lib/state_machine/matcher_helpers.rb, line 28 def all AllMatcher.instance end
Represents a state that matches the original from state. This is useful for defining transitions which are loopbacks.
class Vehicle state_machine do event :ignite transition [:idling, :first_gear] => same end end end
In the above example, same will match whichever the from state is. In the case of the ignite event, it is essential the same as the following:
transition :parked => :parked, :first_gear => :first_gear
# File lib/state_machine/matcher_helpers.rb, line 50 def same LoopbackMatcher.instance end
Generated with the Darkfish Rdoc Generator 2.