Sha256: 85cfd16f70b112b623979a9ac299a185a8a2c26a1df0acaf506785e14c34102f

Contents?: true

Size: 489 Bytes

Versions: 48

Compression:

Stored size: 489 Bytes

Contents

module CassandraObject
  module Types
    class IntegerType < BaseType
      REGEX = /\A[-+]?\d+\Z/
      def encode(int)
        raise ArgumentError.new("#{self} requires an Integer. You passed #{int.inspect}") unless int.kind_of?(Integer)
        int.to_s
      end

      def decode(str)
        return nil if str.empty?
        raise ArgumentError.new("Cannot convert #{str} into an Integer") unless str.kind_of?(String) && str.match(REGEX)
        str.to_i
      end
    end
  end
end

Version data entries

48 entries across 48 versions & 1 rubygems

Version Path
gotime-cassandra_object-2.9.2 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.9.1 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.9.0 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.8.6 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.8.5 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.8.4 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.8.3 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.8.2 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.8.1 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.8.0 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.7.12 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.7.11 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.7.10 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.7.9 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.7.8 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.7.7 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.7.6 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.7.5 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.7.4 lib/cassandra_object/types/integer_type.rb
gotime-cassandra_object-2.7.3 lib/cassandra_object/types/integer_type.rb