Sha256: 3cee5d209bc4189052881ba46a33376c4864cf9918885ed97de80dbd83b49210

Contents?: true

Size: 380 Bytes

Versions: 13

Compression:

Stored size: 380 Bytes

Contents

module Superstore
  module Types
    class IntegerType < BaseType
      REGEX = /\A[-+]?\d+\Z/
      def encode(int)
        raise ArgumentError.new("#{int.inspect} is not an Integer.") unless int.kind_of?(Integer)

        int
      end

      def decode(str)
        str.to_i unless str.empty?
      end

      def typecast(value)
        value.to_i
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
superstore-2.4.4 lib/superstore/types/integer_type.rb
superstore-2.4.3 lib/superstore/types/integer_type.rb
superstore-2.4.2 lib/superstore/types/integer_type.rb
superstore-2.4.1 lib/superstore/types/integer_type.rb
superstore-2.4.0 lib/superstore/types/integer_type.rb
superstore-2.3.0 lib/superstore/types/integer_type.rb
superstore-2.2.0 lib/superstore/types/integer_type.rb
superstore-2.1.3 lib/superstore/types/integer_type.rb
superstore-2.1.2 lib/superstore/types/integer_type.rb
superstore-2.1.1 lib/superstore/types/integer_type.rb
superstore-2.1.0 lib/superstore/types/integer_type.rb
superstore-2.0.1 lib/superstore/types/integer_type.rb
superstore-2.0.0 lib/superstore/types/integer_type.rb