Method: Expire::FromRangeValue#from_value
- Defined in:
- lib/expire/from_range_value.rb
#from_value(string, **args) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/expire/from_range_value.rb', line 16 def from_value(string, **args) # return new(args.merge({ amount: 0, unit: nil })) if string.none? return new(**args.merge(amount: 0, unit: nil)) if string.none? stripped_down = string.strip.downcase match = stripped_down.match FROM_VALUE_REGEX raise ArgumentError, "#{string} is not a valid range value" unless match amount = Integer(match[1]) unit = match[5] new(**args.merge(amount: amount, unit: unit)) end |