class EacRubyUtils::Boolean

Attributes

value[R]

Public Class Methods

new(value) click to toggle source
# File lib/eac_ruby_utils/boolean.rb, line 27
def initialize(value)
  @value = self.class.parse(value)
end
parse(value) click to toggle source
# File lib/eac_ruby_utils/boolean.rb, line 6
def parse(value)
  return parse_string(value) if value.is_a?(::String)
  return parse_string(value.to_s) if value.is_a?(::Symbol)
  return parse_number(value) if value.is_a?(::Numeric)

  value ? true : false
end

Private Class Methods

parse_number(value) click to toggle source
# File lib/eac_ruby_utils/boolean.rb, line 20
def parse_number(value)
  value.zero?
end
parse_string(value) click to toggle source
# File lib/eac_ruby_utils/boolean.rb, line 16
def parse_string(value)
  ['', 'n', 'no', 'f', 'false'].include?(value.strip.downcase) ? false : true
end