Class: Hash

Inherits:
Object show all
Defined in:
lib/flex_core.rb

Instance Method Summary collapse

Instance Method Details

#delete!(*keys) ⇒ Object



115
116
117
118
119
120
# File 'lib/flex_core.rb', line 115

def delete! (*keys)
  keys.each { |k|
    self.delete(k)
  }
  self
end

#find_add!(key, increment = 1) ⇒ Object



122
123
124
125
126
127
128
129
# File 'lib/flex_core.rb', line 122

def find_add! (key, increment = 1)
  if self[key].nil?
    self.store(key, increment)
  else
    self[key] = self[key].to_i + increment
  end
  self
end

#find_store!(key, object) ⇒ Object



131
132
133
134
135
136
137
138
# File 'lib/flex_core.rb', line 131

def find_store! (key, object)
  if self[object[key]].nil?
    self[object[key]] = [object]
  else
    self[object[key]].push(object)
  end
  self
end

#keep(*keys) ⇒ Object



140
141
142
143
144
145
146
# File 'lib/flex_core.rb', line 140

def keep (*keys)
  output = {}
  keys.each { |k|
    output[k] = self[k]
  }
  output
end

#keep!(*keys) ⇒ Object



148
149
150
# File 'lib/flex_core.rb', line 148

def keep! (*keys)
  self.keep(*keys)
end

#store!(key, value) ⇒ Object



110
111
112
113
# File 'lib/flex_core.rb', line 110

def store! (key, value)
  self.store(key, value)
  self
end

#trim_off(*keys) ⇒ Object



152
153
154
155
156
157
158
# File 'lib/flex_core.rb', line 152

def trim_off (*keys)
  output = self.dup
  keys.each { |k|
    output.delete(k)
  }
  output
end

#trim_off!(*keys) ⇒ Object



160
161
162
# File 'lib/flex_core.rb', line 160

def trim_off! (*keys)
  self.trim_off(*keys)
end