Module: RDKit::DB::SetMethods

Included in:
RDKit::DB
Defined in:
lib/rdkit/db.rb

Instance Method Summary collapse

Instance Method Details

#sadd(key, elements) ⇒ Object



121
122
123
124
125
126
127
128
129
130
131
132
133
# File 'lib/rdkit/db.rb', line 121

def sadd(key, elements)
  if set = get_typed_object(key, :set)
    size0 = set.size

    elements.each { |e| set.add(e) }

    set.size - size0
  else
    objects[key] = RDObject.set(elements)

    objects[key].size
  end
end

#scard(key) ⇒ Object



135
136
137
138
139
140
141
142
# File 'lib/rdkit/db.rb', line 135

def scard(key)
  if set = get_typed_object(key, :set)

    set.size
  else
    0
  end
end

#sismember(key, value) ⇒ Object



153
154
155
156
157
158
159
160
# File 'lib/rdkit/db.rb', line 153

def sismember(key, value)
  if set = get_typed_object(key, :set)

    set.include?(value) ? 1 : 0
  else
    0
  end
end

#smembers(key) ⇒ Object



144
145
146
147
148
149
150
151
# File 'lib/rdkit/db.rb', line 144

def smembers(key)
  if set = get_typed_object(key, :set)

    set.to_a
  else
    []
  end
end

#srem(key, elements) ⇒ Object



162
163
164
165
166
167
168
169
170
171
172
# File 'lib/rdkit/db.rb', line 162

def srem(key, elements)
  if set = get_typed_object(key, :set)
    size0 = set.size

    elements.each { |e| set.delete(e) }

    size0 - set.size
  else
    0
  end
end