class Cacchern::Set
Attributes
key[R]
Public Class Methods
contain_class(klass)
click to toggle source
# File lib/cacchern/set.rb, line 10 def contain_class(klass) @value_class = klass end
new(key)
click to toggle source
# File lib/cacchern/set.rb, line 19 def initialize(key) @key = "#{self.class.name.underscore}:#{key}" end
value_class()
click to toggle source
# File lib/cacchern/set.rb, line 14 def value_class @value_class || Member end
Public Instance Methods
add(value)
click to toggle source
# File lib/cacchern/set.rb, line 28 def add(value) return false unless value.instance_of?(self.class.value_class) if value.valid? Redis.current.sadd @key, value.value true else false end end
all()
click to toggle source
# File lib/cacchern/set.rb, line 23 def all values = Redis.current.smembers @key values.map { |value| self.class.value_class.new(value) } end
remove(value)
click to toggle source
# File lib/cacchern/set.rb, line 39 def remove(value) Redis.current.srem @key, value.value end
remove_all()
click to toggle source
# File lib/cacchern/set.rb, line 43 def remove_all Redis.current.del @key end