Class: Remi::Transform::DateDiff
- Inherits:
-
Remi::Transform
- Object
- Remi::Transform
- Remi::Transform::DateDiff
- Defined in:
- lib/remi/transform.rb
Overview
Instance Attribute Summary
Attributes inherited from Remi::Transform
#multi_arg, #source_metadata, #target_metadata
Instance Method Summary collapse
-
#initialize(measure = :days, *args, **kargs, &block) ⇒ DateDiff
constructor
A new instance of DateDiff.
- #transform(from_date, to_date) ⇒ Object
Methods inherited from Remi::Transform
Constructor Details
#initialize(measure = :days, *args, **kargs, &block) ⇒ DateDiff
Returns a new instance of DateDiff.
335 336 337 338 339 |
# File 'lib/remi/transform.rb', line 335 def initialize(measure = :days, *args, **kargs, &block) super @multi_args = true @measure = measure end |
Instance Method Details
#transform(from_date, to_date) ⇒ Object
341 342 343 344 345 346 347 348 349 350 351 352 353 |
# File 'lib/remi/transform.rb', line 341 def transform(from_date, to_date) case @measure.to_sym when :days (to_date - from_date).to_i when :months (to_date.year * 12 + to_date.month) - (from_date.year * 12 + from_date.month) when :years to_date.year - from_date.year else raise ArgumentError, "Unknown date difference measure: #{@measure}" end end |