class Chronic::Repeater
def self.scan_for_units(token)
def self.scan_for_units(token) scanner = {/^years?$/ => :year, /^seasons?$/ => :season, /^months?$/ => :month, /^fortnights?$/ => :fortnight, /^weeks?$/ => :week, /^weekends?$/ => :weekend, /^(week|business)days?$/ => :weekday, /^days?$/ => :day, /^hours?$/ => :hour, /^minutes?$/ => :minute, /^seconds?$/ => :second} scanner.keys.each do |scanner_item| if scanner_item =~ token.word klass_name = 'Chronic::Repeater' + scanner[scanner_item].to_s.capitalize klass = eval(klass_name) return klass.new(scanner[scanner_item]) end end return nil end