class Eye::Patch::ValueParser

Constants

MATCHERS
SIZE_MATCHER
TIME_MATCHER

Public Class Methods

parse(value) click to toggle source
# File lib/eye/patch/value_parser.rb, line 16
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
parse_size(value) click to toggle source
# File lib/eye/patch/value_parser.rb, line 30
def self.parse_size(value)
  unit = value.match(SIZE_MATCHER)[:size]
  value.gsub(/[^\d.]/, "").to_f.send(unit)
end
parse_time(value) click to toggle source
# File lib/eye/patch/value_parser.rb, line 26
def self.parse_time(value)
  ChronicDuration.parse(value)
end