Sha256: c3a58967de0297effaddb4b63d252801c03f1a93da0a240249b301a44a1f9f23
Contents?: true
Size: 640 Bytes
Versions: 3
Compression:
Stored size: 640 Bytes
Contents
require 'micromachine' # This example can be run with ruby -I lib/ ./examples/advanced.rb fsm = MicroMachine.new(:pending) fsm.when(:confirm, :pending => :confirmed) fsm.when(:ignore, :pending => :ignored) fsm.when(:reset, :confirmed => :pending, :ignored => :pending) puts "Should print Confirmed, Pending and Ignored:" fsm.on(:any) do puts fsm.state.capitalize end fsm.trigger(:confirm) fsm.trigger(:ignore) fsm.trigger(:reset) fsm.trigger(:ignore) puts "Should print all states: pending, confirmed, ignored" puts fsm.states.join ", " puts "Should print all events: confirm, ignore, reset" puts fsm.events.join ", "
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
micromachine-3.0.0 | examples/advanced.rb |
micromachine-2.1.0 | examples/advanced.rb |
micromachine-2.0.0 | examples/advanced.rb |