class App::Configurator::Struct

OpenStruct class adaptation

Public Instance Methods

to_hash() click to toggle source

convert struct to hash, taken from: github.com/rubyconfig/config

# File lib/config/app.rb, line 25
def to_hash
  result = {}
  marshal_dump.each do |k, v|
    if v.instance_of? Configurator::Struct
      result[k] = v.to_hash
    elsif v.instance_of? Array
      result[k] = descend_array(v)
    else
      result[k] = v
    end
  end
  result
end

Private Instance Methods

descend_array(array) click to toggle source
# File lib/config/app.rb, line 41
def descend_array(array)
  array.map do |value|
    if value.instance_of? Configurator::Struct
      value.to_hash
    elsif value.instance_of? Array
      descend_array(value)
    else
      value
    end
  end
end