Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
class Array
def map_with_arguments (*args)
a = []
self.each do |e|
a << yield(e, *args)
end
a
end
end
class User
def initialize (name); @name = name; end
def greeting (pre, suf)
"#{pre}#{@name}#{suf}"
end
end
a.map_with_arguments("Dear Mr. ", "!") {|el, pre, suf| el.greeting pre, suf}
a.map_with_arguments("Dear Mr. ", "!", &:greeting)
Унарный амперсанд