Class: Translator::YearFinder
- Defined in:
- lib/natural-date/translator/year_finder.rb
Instance Attribute Summary
Attributes inherited from Step
Instance Method Summary collapse
Instance Method Details
#find_year(day, month, reference_date) ⇒ Object
17 18 19 20 21 22 23 |
# File 'lib/natural-date/translator/year_finder.rb', line 17 def find_year day, month, reference_date if Date.new(reference_date.year, month, day) < reference_date reference_date.year + 1 else reference_date.year end end |
#map(tokens, reference_date) ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 |
# File 'lib/natural-date/translator/year_finder.rb', line 3 def map tokens, reference_date if (years = tokens[:unknown].to_a.select { |t| t.size == 4 && t =~ /\d\d\d\d/ }).any? tokens[:year] = years.map &:to_i else if !tokens[:week] && tokens[:day] && tokens[:month] if tokens[:day].size == 1 && tokens[:month].size == 1 tokens[:year] = [find_year(tokens[:day].first, tokens[:month].first, reference_date)] end end end tokens end |