module Dill::Conversions

Public Instance Methods

Boolean(val) click to toggle source
# File lib/dill/conversions.rb, line 5
def Boolean(val)
  case val
  when 'yes', 'true', true
    true
  when 'no', 'false', false, nil, ''
    false
  else
    raise ArgumentError, "can't convert #{val.inspect} to boolean"
  end
end
List(valstr, &block) click to toggle source
# File lib/dill/conversions.rb, line 16
def List(valstr, &block)
  vs = valstr.strip.split(/\s*,\s*/)

  block ? vs.map(&block) : vs
end
Timeish(val) click to toggle source
# File lib/dill/conversions.rb, line 22
def Timeish(val)
  raise ArgumentError, "can't convert nil to Timeish" if val.nil?

  return val if Date === val || Time === val || DateTime === val

  Chronic.parse(val) or
    raise ArgumentError, "can't parse #{val.inspect} to Timeish"
end