[ruby-core:74545] [Ruby trunk Feature#12211] introduce Date#first_of_month and Date#last_of_month

From: shyouhei@...
Date: 2016-03-25 05:59:39 UTC
List: ruby-core #74545
Issue #12211 has been updated by Shyouhei Urabe.


Naming-wise, Rails (ActiveSupport) has Date#beginning_of_month.  That name can be more familiar to other devs.

I'm against floor(:month) and such, especially against Time class.  The concept of "the second that a day begins" is not that concrete when it relates to summer time.  I recommend you to stick this proposal to Date only.

----------------------------------------
Feature #12211: introduce Date#first_of_month and Date#last_of_month
https://bugs.ruby-lang.org/issues/12211#change-57670

* Author: Shunichi Arai
* Status: Open
* Priority: Normal
* Assignee: 
----------------------------------------
Proposes new methods Date#first_of_month and Date#last_of_month which can be very helpful in reporting applications which need the first and the last day of a month very frequently.

~~~
class Date
    def first_of_month
      Date.new(year, month, 1)
    end
    def last_of_month
      next_month.first_of_month.prev_day
    end
end
~~~

Current way to do it `Date.new(date.year, date.month, 1)` is not elegant and short enough for this simple and common operation.




-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:[email protected]?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>

In This Thread

Prev Next