Sha256: 840372c5bb715c07eb13fe197cba93d291b37c7d8e227c9114baa2bec027f04e

Contents?: true

Size: 480 Bytes

Versions: 4

Compression:

Stored size: 480 Bytes

Contents

require "microfsm"

# This example can be run with ruby -I lib/ ./examples/basic.rb

fsm = MicroFSM.new(:pending)
  .when(:confirm, pending: :confirmed)
  .when(:ignore, pending: :ignored)
  .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

4 entries across 4 versions & 1 rubygems

Version Path
microfsm-0.1.10 examples/basic.rb
microfsm-0.1.7 examples/basic.rb
microfsm-0.1.6 examples/basic.rb
microfsm-0.1.4 examples/basic.rb