functional_support 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0ba0fa0ab21f39be9c0bb8b5a0e158b0140b07de
4
- data.tar.gz: bae24d4534c417cdeb8e91fc995234c076bcb445
3
+ metadata.gz: 6c861b22c995ae6d1d709ca72f0656b11dfd9b54
4
+ data.tar.gz: 4b6564ac4c078ded812bdf876b69b60b403a0376
5
5
  SHA512:
6
- metadata.gz: bfec73d9514a1c6d153a6697cd3b247a02c62dc863203700901e0c38ac563fd72c288f6a561798b322591498b9fb730648451691d7f64f16a4d81ae89df087ae
7
- data.tar.gz: 026ad72b5d8424af64b2b5965e2dde772dd68d6594e29a7199848951a604d46af2b7c88bf3013a9fbdcd6077a1e67a5cc394f9d6e98b3a24b04eef0fcc9ea6a9
6
+ metadata.gz: 151afff6092a774f7e67832f57ee542c6ccd5bb87996530ff06b15d6782d5bc518b96fd936139831dec1bcbe034a44a2bbb78a7c964d28b997dcd25eda216abd
7
+ data.tar.gz: 99858c97c4d4b0a5b6e96316d3e9b7b165533bb9048fda24ea05e0c98170942162592a91505a0f494afecf5328daff67d3952a74e80df51a2dec770b861be141
@@ -1,4 +1,9 @@
1
1
  class Hash
2
+ class HashProc < Proc
3
+ def to(key)
4
+ call key
5
+ end
6
+ end
2
7
  # Like standard merge, except it ignores blank? values
3
8
  def initializing_merge(hash)
4
9
  self.clone.tap do |cloned_hash|
@@ -32,4 +37,16 @@ class Hash
32
37
  end
33
38
  end
34
39
 
40
+ def alter_key_from!(from_key)
41
+ HashProc.new do |to_key|
42
+ new_value = self.delete from_key
43
+ self[to_key] = new_value if new_value.present?
44
+ self
45
+ end
46
+ end
47
+
48
+ def alter_key_from(from_key)
49
+ self.clone.alter_key_from! from_key
50
+ end
51
+
35
52
  end
@@ -1,3 +1,3 @@
1
1
  module FunctionalSupport
2
- VERSION = "0.0.4"
2
+ VERSION = "0.0.5"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: functional_support
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas Chen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-10-08 00:00:00.000000000 Z
11
+ date: 2013-10-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler