class TenderHash::Caster::Default

Public Class Methods

new(cast_to) click to toggle source
# File lib/tender_hash/caster.rb, line 13
def initialize(cast_to)
  @cast_to = cast_to
end

Public Instance Methods

call(val) click to toggle source
# File lib/tender_hash/caster.rb, line 17
def call(val)
  case @cast_to && @cast_to.to_sym
  when :integer
    val.to_i
  when :string
    val.to_s
  when :boolean
    cast_to_boolean(val)
  else
    val
  end
end
cast_to_boolean(val) click to toggle source
# File lib/tender_hash/caster.rb, line 30
def cast_to_boolean(val)
  case val
  when 'true', 1
    true
  when 'false', 0
    false
  else
    val
  end
end