Module: Spawn

Defined in:
lib/spawn.rb

Instance Method Summary collapse

Instance Method Details

#spawn(attrs = {}) ⇒ Object



9
10
11
12
13
# File 'lib/spawn.rb', line 9

def spawn attrs = {}
  @@spawn[self].call(model = OpenStruct.new(attrs))
  factory_method = respond_to?(:create!) ? :create! : :create
  send(factory_method, model.send(:table).merge(attrs))
end

#spawner(&default) ⇒ Object



4
5
6
7
# File 'lib/spawn.rb', line 4

def spawner &default
  @@spawn ||= Hash.new
  @@spawn[self] = default
end