Project

General

Profile

Feature #13259

Kernel#Date

Added by sawa (Tsuyoshi Sawada) over 3 years ago. Updated over 3 years ago.

Status:
Open
Priority:
Normal
Assignee:
-
Target version:
-
[ruby-core:79808]

Description

I often see a piece of code like this:

require "date"

begin
  Date.strptime(some_string, some_format)
rescue
  nil
end

Since we now have (https://bugs.ruby-lang.org/issues/12732) Kernel#Integer with a parameter to avoid raising an error in case of an invalid string, I think that having a counterpart of it in Date would be convenient. I propose Kernel#Date, which works like Date.strptime except that it takes an optional keyword argument, and works as follows:

Date("2017/02/02", "%Y/%m/%d", exception: nil) # => #<Date: 2017-02-02 ((2457787j,0s,0n),+0s,2299161j)>
Date("foo", exception: nil) # => nil

Also available in: Atom PDF