module Medic::Interval
Constants
- NUMBER_WORDS
Public Instance Methods
interval(sym)
click to toggle source
# File lib/medic/interval.rb, line 13 def interval(sym) return sym if sym.is_a? NSDateComponents parts = sym.to_s.gsub('_', ' ').split component = parts.pop.chomp('s') n = parts.map{|p| NUMBER_WORDS[p] || p.to_i}.reduce do |sum, p| if p == 100 && sum > 0 sum * p else sum + p end end n ||= 1 NSDateComponents.new.send("#{component}=", n) end