module ForemanFogProxmox::HashCollection
Public Class Methods
add_and_format_element(dest, dest_key, origin, origin_key, format = :to_s)
click to toggle source
# File lib/foreman_fog_proxmox/hash_collection.rb, line 24 def self.add_and_format_element(dest, dest_key, origin, origin_key, format = :to_s) dest[dest_key] = origin[origin_key].send(format) if origin && origin[origin_key] end
equals?(h1, h2)
click to toggle source
# File lib/foreman_fog_proxmox/hash_collection.rb, line 48 def self.equals?(h1, h2) new_h1 = new_hash_transform_values(h1, :to_s) new_sorted_h1 = new_h1.sort_by { |key, _value| key }.to_h new_h2 = new_hash_transform_values(h2, :to_s) new_sorted_h2 = new_h2.sort_by { |key, _value| key }.to_h new_sorted_h1.keys == new_sorted_h2.keys && new_sorted_h1.values == new_sorted_h2.values end
new_hash_reject_empty_values(h)
click to toggle source
# File lib/foreman_fog_proxmox/hash_collection.rb, line 40 def self.new_hash_reject_empty_values(h) h.reject { |_key, value| ForemanFogProxmox::Value.empty?(value) } end
new_hash_reject_keys(h, excluded_keys)
click to toggle source
# File lib/foreman_fog_proxmox/hash_collection.rb, line 36 def self.new_hash_reject_keys(h, excluded_keys) h.reject { |key, _value| excluded_keys.include?(key) } end
new_hash_transform_values(h, transformation)
click to toggle source
# File lib/foreman_fog_proxmox/hash_collection.rb, line 44 def self.new_hash_transform_values(h, transformation) h.transform_values { |value| value.send(transformation) } end
remove_empty_values(h)
click to toggle source
# File lib/foreman_fog_proxmox/hash_collection.rb, line 28 def self.remove_empty_values(h) h.delete_if { |_key, value| ForemanFogProxmox::Value.empty?(value) } end
remove_keys(h, excluded_keys)
click to toggle source
# File lib/foreman_fog_proxmox/hash_collection.rb, line 32 def self.remove_keys(h, excluded_keys) h.delete_if { |key, _value| excluded_keys.include?(key) } end
stringify_keys(old_h)
click to toggle source
# File lib/foreman_fog_proxmox/hash_collection.rb, line 56 def self.stringify_keys(old_h) h = old_h.map do |k, v| v_str = if v.instance_of? Hash v.stringify_keys else v end [k.to_s, v_str] end Hash[h] end