Sha256: a8d96ffaa220585e9e7201fa57826cc664e8ad0827b57216dc10f4880505d6bd
Contents?: true
Size: 566 Bytes
Versions: 4
Compression:
Stored size: 566 Bytes
Contents
module Gameball module Utils extend self def validate(hash, required, optional) errors = [] required.each do |val| raise Gameball::GameballError.new("Required key: #{val.to_sym.inspect}") unless hash.has_key?(val.to_sym) end optional = optional + required hash.each_key do |val| unless optional.include?(val.to_s) raise Gameball::GameballError.new("Unknown key: #{val.to_sym.inspect}. Valid keys are: #{optional.map(&:inspect).join(", ")}") end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems