# License: AGPL-3.0-or-later WITH Web-Template-Output-Additional-Permission-3.0-or-later

# Given a hash and an array of keys
# Raise an argument error if any keys are missing from the hash

class RequiredKeys

  def initialize(hash, keys)
    missing = keys.select{|k| hash[k].nil?}
    raise ArgumentError.new("Missing keys: #{missing}") if missing.any?
  end
end