Skip to content

Latest commit

 

History

History
151 lines (65 loc) · 1.72 KB

BooleanConverter.rst

File metadata and controls

151 lines (65 loc) · 1.72 KB

BooleanConverter

Constants

  • FALSE_VALUES

Files

Methods

.convert_type

def db_type
  Neo4j::Shared::Boolean
end

.converted?

def converted?(value)
  converted_values.include?(value)
end

.converted_values

def converted_values
  [true, false]
end

.db_type

def db_type
  Neo4j::Shared::Boolean
end

.to_db

def to_db(value)
  return false if FALSE_VALUES.include?(value)
  case value
  when TrueClass, FalseClass
    value
  when Numeric, /^\-?[0-9]/
    !value.to_f.zero?
  else
    value.present?
  end
end

.to_ruby

def to_db(value)
  return false if FALSE_VALUES.include?(value)
  case value
  when TrueClass, FalseClass
    value
  when Numeric, /^\-?[0-9]/
    !value.to_f.zero?
  else
    value.present?
  end
end