Sha256: c9dfbee737b1c64f1525ef39404ccefbc582eae697cd4b5d6f4f7f6239f10ca9

Contents?: true

Size: 396 Bytes

Versions: 3

Compression:

Stored size: 396 Bytes

Contents

class HashCast::Casters::IntegerCaster

  def self.cast(value, attr_name, options = {})
    if value.is_a?(Integer)
      value
    elsif value.is_a?(String)
      begin
        Integer(value)
      rescue ArgumentError => e
        raise HashCast::Errors::CastingError, "is invalid integer"
      end
    else
      raise HashCast::Errors::CastingError, "should be a integer"
    end
  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
hash_cast-0.5.2 lib/hash_cast/casters/integer_caster.rb
hash_cast-0.5.1 lib/hash_cast/casters/integer_caster.rb
hash_cast-0.5.0 lib/hash_cast/casters/integer_caster.rb