class HashUtils
Public Class Methods
hash_to_open_struct(data_hash)
click to toggle source
# File lib/utils/hash_utils.rb, line 3 def hash_to_open_struct(data_hash) elements_with_hash_values = data_hash.select { |key, value| value.is_a? Hash } return OpenStruct.new(data_hash) if elements_with_hash_values.empty? result = OpenStruct.new(data_hash.select { |key, value| !value.is_a?(Hash) }) elements_with_hash_values.each do |key, value| result.send("#{key}=", hash_to_open_struct(value)) end result.extend(OpenStructHashable) if RUBY_PLATFORM == "java" result end