rattle 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
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