Module: Lorentz::Strings

Included in:
Lorentz
Defined in:
lib/lorentz/strings.rb

Instance Method Summary collapse

Instance Method Details

#append(key, value) ⇒ Object



25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/lorentz/strings.rb', line 25

def append(key, value)
  if exists(key)
    old_value = get(key)
    if old_value.is_a?(String)
      new_value = old_value << value
      set(key, new_value)
      return new_value.length
    else
      raise LorentzException, "The value stored at key: #{key} is not a String"
    end
  else
    set(key, "")
    return "OK"
  end
end

#get(key) ⇒ Object



9
10
11
12
13
# File 'lib/lorentz/strings.rb', line 9

def get(key)
  run do
    @db[key]
  end
end

#set(key, value) ⇒ Object



2
3
4
5
6
7
# File 'lib/lorentz/strings.rb', line 2

def set(key, value)
  save do
    @db[key] = value
    return "OK"
  end
end

#strlen(key) ⇒ Object



15
16
17
18
19
20
21
22
23
# File 'lib/lorentz/strings.rb', line 15

def strlen(key)
  val = get(key)
  return 0 unless val
  if val.kind_of?(String)
    return val.length
  else
    raise LorentzException, "The value stored at key: #{key} is not a String"
  end
end