class SimpleState::Definition
Attributes
definition[R]
Public Class Methods
define(&block)
click to toggle source
# File lib/simple_state/definition.rb, line 2 def self.define(&block) new(&block).definition end
new(&block)
click to toggle source
# File lib/simple_state/definition.rb, line 8 def initialize(&block) @definition = { transitions: {} } instance_exec(&block) end
Private Instance Methods
state(*states)
click to toggle source
# File lib/simple_state/definition.rb, line 20 def state(*states) @definition[:states] = states end
transition(name, to:, from:)
click to toggle source
# File lib/simple_state/definition.rb, line 16 def transition(name, to:, from:) @definition[:transitions][name] = { from: [*from], to: to } end