Sha256: a2bf3b44426c4f1948bfddf330e6eda8a750ca399c1a86e7461eab74b6f90e8a

Contents?: true

Size: 564 Bytes

Versions: 126

Compression:

Stored size: 564 Bytes

Contents

# frozen_string_literal: true

class ReeDate::DaysInMonth
  include Ree::FnDSL

  fn :days_in_month do
    link :today
    link 'ree_date/functions/constants', -> { COMMON_YEAR_DAYS_IN_MONTH }
  end

  doc(<<~DOC)
    Returns the number of days in the given month.
    If no year is specified, it will use the current year.
  DOC
  contract(Integer, Nilor[Integer] => Integer)
  def call(month, year = nil)
    year = year || today.year

    if month == 2 && Date.gregorian_leap?(year)
      29
    else
      COMMON_YEAR_DAYS_IN_MONTH[month - 1]
    end
  end
end

Version data entries

126 entries across 126 versions & 1 rubygems

Version Path
ree_lib-1.1.1 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.1.0 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.124 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.123 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.122 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.121 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.120 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.119 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.118 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.117 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.116 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.115 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.114 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.113 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.112 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.111 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.110 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.109 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.108 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb
ree_lib-1.0.107 lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb