module Enumerable
Public Instance Methods
hashify(*args)
click to toggle source
# File lib/mapify.rb, line 12 def hashify(*args) fail_fast?(args) map do |object| args.reduce({}) do |hash, arg| hash[arg] = object.public_send(arg) hash end end end
mapify(*args)
click to toggle source
# File lib/mapify.rb, line 2 def mapify(*args) fail_fast?(args) map do |object| args.map do |arg| object.public_send(arg) end end end
Private Instance Methods
all_symbol_args?(args)
click to toggle source
# File lib/mapify.rb, line 24 def all_symbol_args?(args) args.find{|x| x.class != Symbol}.nil? end
fail_fast?(args)
click to toggle source
# File lib/mapify.rb, line 28 def fail_fast?(args) raise ArgumentError, 'All arguments must be symbols' unless all_symbol_args?(args) && !args.empty? end