Class: Chimera::RedisObjectProxy::Set
Instance Attribute Summary
Attributes inherited from Base
#extra_opts, #name, #owner
Instance Method Summary
collapse
Methods inherited from Collection
#sort
Methods inherited from Base
#connection, #decode, #destroy, #encode, #initialize, #key
Instance Method Details
#<<(val) ⇒ Object
112
113
114
|
# File 'lib/chimera/redis_objects.rb', line 112
def <<(val)
add(val)
end
|
#add(val) ⇒ Object
108
109
110
|
# File 'lib/chimera/redis_objects.rb', line 108
def add(val)
connection.sadd(self.key, encode(val))
end
|
#card ⇒ Object
Also known as:
size, count
128
129
130
|
# File 'lib/chimera/redis_objects.rb', line 128
def card
connection.scard(self.key)
end
|
#diff(*set_keys) ⇒ Object
166
167
168
|
# File 'lib/chimera/redis_objects.rb', line 166
def diff(*set_keys)
(connection.sdiff(set_keys.join(" ")) || []).collect { |val| decode(val) }
end
|
#diffstore(dest_key, *set_keys) ⇒ Object
Also known as:
diff_and_store
170
171
172
|
# File 'lib/chimera/redis_objects.rb', line 170
def diffstore(dest_key, *set_keys)
connection.sdiffstore(dest_key, set_keys.join(" "))
end
|
#inter(*set_keys) ⇒ Object
Also known as:
intersect
144
145
146
|
# File 'lib/chimera/redis_objects.rb', line 144
def inter(*set_keys)
(connection.sinter(set_keys.join(" ")) || []).collect { |val| decode(val) }
end
|
#interstore(dest_key, *set_keys) ⇒ Object
Also known as:
intersect_and_store
150
151
152
|
# File 'lib/chimera/redis_objects.rb', line 150
def interstore(dest_key, *set_keys)
connection.sinterstore(dest_key, set_keys.join(" "))
end
|
#ismember(val) ⇒ Object
Also known as:
is_member?, include?, includes?, contains?
135
136
137
|
# File 'lib/chimera/redis_objects.rb', line 135
def ismember(val)
connection.sismember(self.key, encode(val))
end
|
#members ⇒ Object
Also known as:
all
176
177
178
|
# File 'lib/chimera/redis_objects.rb', line 176
def members
(connection.smembers(self.key) || []).collect { |val| decode(val) }
end
|
#move(val, dest_set_key) ⇒ Object
124
125
126
|
# File 'lib/chimera/redis_objects.rb', line 124
def move(val, dest_set_key)
connection.smove(self.key, dest_set_key, encode(val))
end
|
#pop ⇒ Object
120
121
122
|
# File 'lib/chimera/redis_objects.rb', line 120
def pop
decode connection.spop(self.key)
end
|
#randmember ⇒ Object
Also known as:
rand_member
182
183
184
|
# File 'lib/chimera/redis_objects.rb', line 182
def randmember
decode connection.srandmember(self.key)
end
|
#rem(val) ⇒ Object
116
117
118
|
# File 'lib/chimera/redis_objects.rb', line 116
def rem(val)
connection.srem(self.key, encode(val))
end
|
#union(*set_keys) ⇒ Object
156
157
158
|
# File 'lib/chimera/redis_objects.rb', line 156
def union(*set_keys)
(connection.sunion(set_keys.join(" ")) || []).collect { |val| decode(val) }
end
|
#unionstore(dest_key, *set_keys) ⇒ Object
Also known as:
union_and_store
160
161
162
|
# File 'lib/chimera/redis_objects.rb', line 160
def unionstore(dest_key, *set_keys)
connection.sunionstore(dest_key, set_keys.join(" "))
end
|