Class: ActiveOrm::Redis::Set

Inherits:
Base
  • Object
show all
Defined in:
lib/active_orm/redis/set.rb

Class Method Summary collapse

Methods inherited from Base

client, evaluate

Class Method Details

.combine(*args) ⇒ Object



11
12
13
14
# File 'lib/active_orm/redis/set.rb', line 11

def combine(*args)
  value = client.sunion(*args)
  metatransform(value)
end

.count(key) ⇒ Object



35
36
37
# File 'lib/active_orm/redis/set.rb', line 35

def count(key)
  client.scard(normalize_key(key))
end

.create(key, *args) ⇒ Object



39
40
41
# File 'lib/active_orm/redis/set.rb', line 39

def create(key, *args)
  client.sadd(normalize_key(key), args)
end

.create_combination(key, *args) ⇒ Object



43
44
45
# File 'lib/active_orm/redis/set.rb', line 43

def create_combination(key, *args)
  client.sunionstore(normalize_key(key), args)
end

.create_difference(key, *args) ⇒ Object



47
48
49
# File 'lib/active_orm/redis/set.rb', line 47

def create_difference(key, *args)
  client.sdiffstore(normalize_key(key), *args)
end

.create_intersection(key, *args) ⇒ Object



51
52
53
# File 'lib/active_orm/redis/set.rb', line 51

def create_intersection(key, *args)
  client.sinterstore(normalize_key(key), args)
end

.destroy(key, *args) ⇒ Object



59
60
61
# File 'lib/active_orm/redis/set.rb', line 59

def destroy(key, *args)
  client.srem(normalize_key(key), *args)
end

.destroy_random(key) ⇒ Object



63
64
65
# File 'lib/active_orm/redis/set.rb', line 63

def destroy_random(key)
  client.spop(normalize_key(key))
end

.difference(*args) ⇒ Object



16
17
18
19
# File 'lib/active_orm/redis/set.rb', line 16

def difference(*args)
  value = client.sdiff(*args)
  metatransform(value)
end

.find(key) ⇒ Object



6
7
8
9
# File 'lib/active_orm/redis/set.rb', line 6

def find(key)
  value = client.smembers(normalize_key(key))
  metatransform(value)
end

.intersection(key, *args) ⇒ Object



21
22
23
24
# File 'lib/active_orm/redis/set.rb', line 21

def intersection(key, *args)
  value = client.sinter(normalize_key(key), *args)
  metatransform(value)
end

.move(key, destination, value) ⇒ Object



55
56
57
# File 'lib/active_orm/redis/set.rb', line 55

def move(key, destination, value)
  client.smove(normalize_key(key), destination.to_s, value)
end

.sample(key, value = 1) ⇒ Object



26
27
28
29
# File 'lib/active_orm/redis/set.rb', line 26

def sample(key, value = 1)
  value = client.srandmember(normalize_key(key), value)
  metatransform(value)
end

.scan(key, cursor, opts = {}) ⇒ Object



67
68
69
# File 'lib/active_orm/redis/set.rb', line 67

def scan(key, cursor, opts = {})
  client.sscan(normalize_key(key), cursor, opts)
end

.value?(key, value) ⇒ Boolean

Returns:

  • (Boolean)


31
32
33
# File 'lib/active_orm/redis/set.rb', line 31

def value?(key, value)
  client.sismember(normalize_key(key), value)
end