Module: Repeatable::Conversions

Extended by:
T::Sig
Defined in:
lib/repeatable/conversions.rb

Class Method Summary collapse

Class Method Details

.Date(arg) ⇒ ::Date

Parameters:

  • arg (Object)

Returns:

  • (::Date)


10
11
12
13
14
15
16
17
18
19
# File 'lib/repeatable/conversions.rb', line 10

def Date(arg)
  case arg
  when Date, Time
    arg.to_date
  else
    Date.parse(T.let(arg, T.untyped))
  end
rescue ArgumentError
  Kernel.raise TypeError, "Cannot convert #{arg.inspect} to Date"
end