class Fabrication::Sequencer
Constants
- DEFAULT
Public Class Methods
Source
# File lib/fabrication/sequencer.rb, line 13 def self.clear instance.sequences.clear instance.sequence_blocks.clear end
Source
# File lib/fabrication/sequencer.rb, line 9 def self.sequence(name = DEFAULT, start = nil, &) instance.sequence(name, start, &) end
Public Instance Methods
Source
# File lib/fabrication/sequencer.rb, line 37 def reset Fabrication::Config.sequence_start = nil @sequences = nil @sequence_blocks = nil end
Source
# File lib/fabrication/sequencer.rb, line 18 def sequence(name = DEFAULT, start = nil, &block) idx = sequences[name] ||= start || Fabrication::Config.sequence_start if block sequence_blocks[name] = block.to_proc else sequence_blocks[name] ||= ->(i) { i } end.call(idx).tap do sequences[name] = idx.succ end end
Source
# File lib/fabrication/sequencer.rb, line 33 def sequence_blocks @sequence_blocks ||= {} end
Source
# File lib/fabrication/sequencer.rb, line 29 def sequences @sequences ||= {} end