Sha256: b891a86a3242a70fba834e7b228a88efc3871dd7c232dfab7f5d57040d2bb08e

Contents?: true

Size: 510 Bytes

Versions: 3

Compression:

Stored size: 510 Bytes

Contents

require 'micromachine'

# This example can be run with ruby -I lib/ ./examples/basic.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, Reset and Ignored:"

if fsm.trigger(:confirm)
  puts "Confirmed"
end

if fsm.trigger(:ignore)
  puts "Ignored"
end

if fsm.trigger(:reset)
  puts "Reset"
end

if fsm.trigger(:ignore)
  puts "Ignored"
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
micromachine-3.0.0 examples/basic.rb
micromachine-2.1.0 examples/basic.rb
micromachine-2.0.0 examples/basic.rb