Class: Rudis::Set

Inherits:
Structure show all
Defined in:
lib/rudis/structures/set.rb

Instance Method Summary collapse

Methods inherited from Structure

#default_options, #del, #exists?, #expire, #expire_at, #redis_type, #rename, #ttl, #type, #watch

Methods inherited from Base

#default_options, #initialize, #key, #redis

Methods inherited from Rudis

key

Constructor Details

This class inherits a constructor from Rudis::Base

Instance Method Details

#add(val) ⇒ Object Also known as: <<



13
14
15
# File 'lib/rudis/structures/set.rb', line 13

def add(val)
  redis.sadd(key, type.put(val))
end

#cardObject Also known as: count, size, length



24
25
26
# File 'lib/rudis/structures/set.rb', line 24

def card
  redis.scard(key)
end

#is_member?(val) ⇒ Boolean Also known as: member?, include?

Returns:

  • (Boolean)


18
19
20
# File 'lib/rudis/structures/set.rb', line 18

def is_member?(val)
  redis.sismember(key, type.put(val))
end

#membersObject Also known as: all, to_a



3
4
5
6
7
8
9
# File 'lib/rudis/structures/set.rb', line 3

def members
  mems = redis.smembers(key)
  mems.map! do |k|
    type.get(k)
  end
  mems
end

#popObject



43
44
45
46
# File 'lib/rudis/structures/set.rb', line 43

def pop
  e = redis.spop(key)
  e && type.get(e)
end

#randmemberObject Also known as: rand



37
38
39
40
# File 'lib/rudis/structures/set.rb', line 37

def randmember
  e = redis.srandmember(key)
  e && type.get(e)
end

#rem(val) ⇒ Object Also known as: remove, delete



31
32
33
# File 'lib/rudis/structures/set.rb', line 31

def rem(val)
  redis.srem(key, type.put(val))
end

#sort(*args) ⇒ Object



48
49
50
# File 'lib/rudis/structures/set.rb', line 48

def sort(*args)
  #TODO
end