rattle 0.1.0 → 0.2.0

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.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rattle.rb +6 -18
  3. data/lib/rattle/version.rb +1 -1
  4. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 77780e911aef6030a87d029ccb2f3afe216e2ca5
4
- data.tar.gz: 5dc73f3829af63818bca2d02307593c175871016
3
+ metadata.gz: 1bff199e4205dcf77825431a540aacf0cf736844
4
+ data.tar.gz: ddf1af73e424bac18d36fa6ad1276d3db0ffafce
5
5
  SHA512:
6
- metadata.gz: 51173fefe48e917b544196a0009252a76d68342314b1d5585b00c65da0f751d7e04b7c0bee9757e01b72994d0500fca7f311a7e2ac68b707a4d29f1e7a653f68
7
- data.tar.gz: 6f3a4aab15d099550938355e618f974da42577653ea14aa425bd321a145174da5d23d63798d03ae59f4a7180f45e161d38e1d8c00473436f947fa14872f01fc4
6
+ metadata.gz: c7207732de611c4079d822440802d77265520095f05b4dc05ea7a148c27e8d7e7dbe99ebae5c9a78f55c7715ea530acbcbf4c8c4567543d84b345206ded8c389
7
+ data.tar.gz: 728ebe0124e4d593b910d89a33b82cc95afcebda5d0ca7bdf01bdd7e210468403ed1de8235fb6a6dd3eaae490b57da9d5b565665da21aca9bc752355a05dd275
@@ -3,27 +3,15 @@ require "rattle/version"
3
3
  module Rattle
4
4
  refine Hash do
5
5
  def deep_gsub(&block)
6
- replaced = Hash.new
6
+ self.map { |k,v|
7
+ new_k, new_v = block.call(k,v)
7
8
 
8
- self.each_pair do |k,v|
9
- updated_key, updated_value = nil
10
-
11
- if v.is_a?(Hash)
12
- updated_value = v.deep_gsub(&block)
13
- else
14
- updated_value = v
15
- end
16
-
17
- begin
18
- updated_key, updated_value = yield(k, updated_value)
19
- rescue LocalJumpError => exception
20
- updated_key, updated_value = exception.exit_value
9
+ if new_v.is_a?(Hash)
10
+ new_v = new_v.deep_gsub(&block)
21
11
  end
22
12
 
23
- replaced[updated_key] = updated_value
24
- end
25
-
26
- replaced
13
+ [new_k, new_v]
14
+ }.to_h
27
15
  end
28
16
  end
29
17
  end
@@ -1,3 +1,3 @@
1
1
  module Rattle
2
- VERSION = "0.1.0"
2
+ VERSION = "0.2.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rattle
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ajith Hussain