Class: Eye::Patch::ValueParser
- Inherits:
-
Object
- Object
- Eye::Patch::ValueParser
- Defined in:
- lib/eye/patch/value_parser.rb
Constant Summary collapse
- TIME_MATCHER =
/\s(?<duration>(?:week|day|hour|minute|second)s?)(?:\s|\Z)/.freeze
- SIZE_MATCHER =
/\s(?<size>(?:tera|giga|mega|kilo)?bytes?)(?:\s|\Z)/.freeze
- MATCHERS =
{ time: TIME_MATCHER, size: SIZE_MATCHER }.freeze
Class Method Summary collapse
Class Method Details
.parse(value) ⇒ Object
13 14 15 16 17 18 19 20 21 |
# File 'lib/eye/patch/value_parser.rb', line 13 def self.parse(value) return value unless value.is_a?(String) result = MATCHERS.detect do |match_type, matcher| break send(:"parse_#{match_type}", value) if value.match(matcher) end result || value end |