Slide 14
Slide 14 text
CASE3:
オプションの解析
def self.call(*args, **options)
default_options.merge(options.compact) =>
{ year:, month:, day: }
new(*args).call(Time.zone.local(year, month, day))
end
# オプショナルなキーのデフォルト値
def self.default_options
{ month: 1, day: 1 }
end