Sha256: cda765626d61c7f26e7d828c1f21c85e487e3241aaedc67d3e624c3e3973ece7

Contents?: true

Size: 536 Bytes

Versions: 1

Compression:

Stored size: 536 Bytes

Contents

class Typero::IntegerType < Typero::Type
  def set
    @value = @value.to_i
  end

  def validate
    raise TypeError, error_for(:min_value_error) % [@opts[:min], @value] if @opts[:min] && @value < @opts[:min]
    raise TypeError, error_for(:max_value_error) % [@opts[:max], @value] if @opts[:max] && @value > @opts[:max]
  end

  def min_value_error
    'min is %s, got %s'
  end

  def max_value_error
    'max is %s, got %s'
  end

  def db_field
    opts = {}
    opts[:null]  = false if @opts[:req]
    [:integer, opts]
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
typero-0.5.2 ./lib/typero/type/integer.rb