Module: Lims::Core::Base::ClassMethod

Defined in:
lib/lims-core/base.rb

Instance Method Summary collapse

Instance Method Details

#is_array_of(child_klass, options = {}, &initializer) ⇒ Object



50
51
52
53
54
55
56
57
58
59
60
61
62
# File 'lib/lims-core/base.rb', line 50

def is_array_of(child_klass, options = {},  &initializer)
  define_method :initialize_array do |*args|
    @content = initializer ? initializer[self, child_klass] : []
  end

  class_eval do
    include Enumerable
    include IsArrayOf
    def_delegators :@content, :each, :size , :each_with_index, :map, :zip, :clear, :empty?, :to_s \
      , :include?, :to_a, :first, :last

  end
end