Sha256: 10f9aed8e07878b7fec9566e1811450dbc3467835cd80bc49e208207a1163034
Contents?: true
Size: 904 Bytes
Versions: 2
Compression:
Stored size: 904 Bytes
Contents
class Kredis::Types::Set < Kredis::Types::Proxying proxying :smembers, :sadd, :srem, :multi, :del, :sismember, :scard, :spop, :exists?, :srandmember attr_accessor :typed def members strings_to_types(smembers || [], typed).sort end alias to_a members def add(*members) sadd types_to_strings(members, typed) if members.flatten.any? end alias << add def remove(*members) srem types_to_strings(members, typed) if members.flatten.any? end def replace(*members) multi do del add members end end def include?(member) sismember type_to_string(member, typed) end def size scard.to_i end def take string_to_type(spop, typed) end def clear del end def sample(count = nil) if count.nil? string_to_type(srandmember(count), typed) else strings_to_types(srandmember(count), typed) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
kredis-1.5.0 | lib/kredis/types/set.rb |
kredis-1.4.0 | lib/kredis/types/set.rb |