Module: CassandraObject::Types::IntegerType

Defined in:
lib/cassandra_object/types/integer_type.rb

Constant Summary collapse

REGEX =
/\A[-+]?\d+\Z/

Class Method Summary collapse

Class Method Details

.decode(str) ⇒ Object

Raises:

  • (ArgumentError)


11
12
13
14
15
# File 'lib/cassandra_object/types/integer_type.rb', line 11

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

.encode(int) ⇒ Object

Raises:

  • (ArgumentError)


5
6
7
8
# File 'lib/cassandra_object/types/integer_type.rb', line 5

def encode(int)
  raise ArgumentError.new("#{self} requires an Integer. You passed #{int.inspect}") unless int.kind_of?(Integer)
  int.to_s
end