Class: SparaDisk

Inherits:
Object
  • Object
show all
Defined in:
lib/spara/spara_disk.rb

Instance Method Summary collapse

Constructor Details

#initialize(name) ⇒ SparaDisk

Returns a new instance of SparaDisk.



4
5
6
# File 'lib/spara/spara_disk.rb', line 4

def initialize(name)
  @store = PStore.new(name)
end

Instance Method Details

#allObject



34
35
36
37
38
39
40
41
42
# File 'lib/spara/spara_disk.rb', line 34

def all
  @store.transaction(true) do
    # @store.instance_variable_get(:@table)
    @store.roots.inject({}) do |db, key|
      db[key] = @store[key]
      db
    end
  end
end

#del(key) ⇒ Object



16
17
18
# File 'lib/spara/spara_disk.rb', line 16

def del(key)
  @store.transaction { @store.delete(key) }
end

#get(key) ⇒ Object



12
13
14
# File 'lib/spara/spara_disk.rb', line 12

def get(key)
  @store.transaction(true) { @store.fetch(key, nil) }
end

#keysObject



20
21
22
# File 'lib/spara/spara_disk.rb', line 20

def keys
  @store.transaction(true) { @store.roots }
end

#set(key, value) ⇒ Object



8
9
10
# File 'lib/spara/spara_disk.rb', line 8

def set(key, value)
  @store.transaction { @store[key] = value }
end

#valsObject



24
25
26
27
28
29
30
31
32
# File 'lib/spara/spara_disk.rb', line 24

def vals
  @store.transaction(true) do
    # @store.instance_variable_get(:@table).values
    @store.roots.inject([]) do |values, key|
      values.push(@store[key])
      values
    end
  end
end