Sha256: d3d9ff25b6f0b5121a2572f8e10b2277f37df12b103222f5f6ebe8019562cae9
Contents?: true
Size: 601 Bytes
Versions: 3
Compression:
Stored size: 601 Bytes
Contents
module BqFactory class Registory include Enumerable attr_reader :name def initialize(name) @name = name end def find(name) if registered?(name) @items[name] else raise ArgumentError.new, "#{@name} not registered: #{name}" end end alias :[] :find def clear items.clear end def each(&block) items.values.uniq.each(&block) end def registered?(name) items.key?(name) end def register(name, item) items[name] = item end def items @items ||= {} end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
bq_factory-0.2.0 | lib/bq_factory/registory.rb |
bq_factory-0.1.1 | lib/bq_factory/registory.rb |
bq_factory-0.1.0 | lib/bq_factory/registory.rb |