class DTK::DSL::InputOutputCommon::Array

Public Class Methods

new(parent_class, array = nil) click to toggle source
# File lib/dsl/input_output_common/array.rb, line 21
def initialize(parent_class, array = nil)
  array.each { |el| self << reify(parent_class, el) } if array
end

Private Instance Methods

reify(parent_class, obj) click to toggle source
# File lib/dsl/input_output_common/array.rb, line 27
def reify(parent_class, obj)
  if obj.kind_of?(self.class)
    obj
  elsif obj.kind_of?(::Array)
    inject(self.class.new(parent_class)) { |a, el| a << reify(parent_class, el) }
  elsif obj.kind_of?(::Hash)
    parent_class::Hash.new(parent_class, obj)
  else
    obj
  end
end