過去の同一日を取得する際に月末を考慮に入れる方法
特定の日付から過去10年分の同一日を取得したいのですが、
指定する日付が月末であった場合は月末に変更したいです。
このように書いたのですが、もう少し良い書き方はありますか?
def same_dates_in_past(date)
#date = Date.new(2017,2,28)
end_of_month = date == date.end_of_month
dates = 10.times.map{|i| date - i.years}
dates.map!(&:end_of_month) if end_of_month
dates
end
もう少し短く簡潔に書けるかと思ったのですが、うまく書けませんでした。