Method: Remi::Transform#date_diff

Defined in:
lib/remi/transform.rb

#date_diff(measure = :days) ⇒ Object



120
121
122
123
124
125
126
127
128
129
130
131
132
# File 'lib/remi/transform.rb', line 120

def date_diff(measure = :days)
  memoize_as_lambda(__method__, measure.to_sym) do |(mmeasure), *larg|
    if mmeasure == :days
      (larg.last - larg.first).to_i
    elsif mmeasure == :months
      (larg.last.year * 12 + larg.last.month) - (larg.first.year * 12 + larg.first.month)
    elsif mmeasure == :years
      larg.last.year - larg.first.year
    else
      raise "I don't know how to handle #{mmeasure} yet"
    end
  end
end