Sha256: 4a1053cad6ce4a879bf126a628cc35348b1428163d36baab21c2e0e7e96627c3
Contents?: true
Size: 886 Bytes
Versions: 2
Compression:
Stored size: 886 Bytes
Contents
# frozen_string_literal: true class Batch def each(&proc) value.each do |val| instance_exec(val, &proc) if proc.is_a?(Proc) end end def id(val = nil) if val @id = val else @id end end def initialize(params) @id = params[:id] || identity_generator(:batch) Universe.add_to_atomes(@id, self) Universe.add_to_atomes(@id, self) end def dispatch (method, *args, &block) @data.each do |atome_found| atome_found.send(method, *args, &block) end end # TODO: automatise collector methods creation when creating a new atome type def color(args, &block) dispatch(:color, args, &block) end def shadow(args, &block) dispatch(:color, args, &block) end def method_missing(method, *args, &block) dispatch(method, args, &block) end def data(collection) @data = collection end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
atome-0.5.3.8.1 | lib/atome/kernel/batch.rb |
atome-0.5.3.8.0 | lib/atome/kernel/batch.rb |