module Jekyll::Menus::Utils

Public Instance Methods

deep_merge(old, _new) click to toggle source
# File lib/jekyll/menus/utils.rb, line 8
def deep_merge(old, _new)
  return old | _new if old.is_a?(Array)

  old.merge(_new) do |_, o, n|
    (o.is_a?(Hash) && n.is_a?(Hash)) || (o.is_a?(Array) &&
        n.is_a?(Array)) ? deep_merge(o, n) : n
  end
end
deep_merge!(old, _new) click to toggle source
# File lib/jekyll/menus/utils.rb, line 17
def deep_merge!(old, _new)
  old.replace(deep_merge(
    old, _new
  ))
end