class Integer

def months

2.months # => 2 months

Returns a Duration instance matching the number of months provided.
def months
  ActiveSupport::Duration.months(self)
end

def multiple_of?(number)

10.multiple_of?(2) # => true
6.multiple_of?(5) # => false
0.multiple_of?(0) # => true

Check whether the integer is evenly divisible by the argument.
def multiple_of?(number)
  number == 0 ? self == 0 : self % number == 0
end

def ordinal

-1001.ordinal # => "st"
-11.ordinal # => "th"
1003.ordinal # => "rd"
1002.ordinal # => "nd"
2.ordinal # => "nd"
1.ordinal # => "st"

in an ordered sequence such as 1st, 2nd, 3rd, 4th.
Ordinal returns the suffix used to denote the position
def ordinal
  ActiveSupport::Inflector.ordinal(self)
end

def ordinalize

-1001.ordinalize # => "-1001st"
-11.ordinalize # => "-11th"
1003.ordinalize # => "1003rd"
1002.ordinalize # => "1002nd"
2.ordinalize # => "2nd"
1.ordinalize # => "1st"

position in an ordered sequence such as 1st, 2nd, 3rd, 4th.
Ordinalize turns a number into an ordinal string used to denote the
def ordinalize
  ActiveSupport::Inflector.ordinalize(self)
end

def years

2.years # => 2 years

Returns a Duration instance matching the number of years provided.
def years
  ActiveSupport::Duration.years(self)
end