app-configs 0.1.0 → 0.1.1

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
  SHA256:
3
- metadata.gz: 44bd83dad8cb131fa7e09b15221e6e350d3d8ade763687869598c12e41c02217
4
- data.tar.gz: 880fc5ec782b3de5bb62263955a9576065253d2e8c95f1b37f674cfea088f3e0
3
+ metadata.gz: 2ee7136673ea33c00302c032a8f0ecc707055b977ac632bf57dbc77ff1518f9b
4
+ data.tar.gz: 5dece7059581ae470d10b03299b524ef65b0db3ed2a8b8d3132cee4cb21d76eb
5
5
  SHA512:
6
- metadata.gz: 7fc746a8a7303a999f99f972024b3f4633de850e5d07357a492c60c39afa3980e6f259c443f885bea69fc13eeb5ad11b2c54d19effd89d499e5cf419acc129a7
7
- data.tar.gz: 42dc9f7c3eae289fa80f08e1e8d0cba0981579f4e74a99d5d1ee3166a65de2d4175a1ca3c3f3d64753f6e4e25991bc582b2a18e81c3efe2e6b420a556a1ac90a
6
+ metadata.gz: 88a4b4c61dfe2e3f687897a6a740a63fc02981e75fccb3d0b0ca74a31ecfc9e68bafee3933f1fce0690c30c757961cf72b52915f828423eb223c175d12070cc7
7
+ data.tar.gz: 1f5f9ef8f8f15aa07369405b0da3a3df799b01e34b46d06eed856673548f7b057dccb422cbdd5d7d4998d61c2905cb285baf3b1d1855b93908e420c4d63e3db1
@@ -3,16 +3,16 @@
3
3
 
4
4
  class Hash
5
5
  def deeply_symbolize_keys!
6
- hash = self.deeply_symbolize_keys
6
+ temp = self.deeply_symbolize_keys
7
7
  self.clear
8
- self.merge( hash )
8
+ self.merge( temp )
9
9
  end
10
10
 
11
11
  def deeply_symbolize_keys
12
12
  self.each_with_object({}) do |(key, obj), hash|
13
13
  k = key.to_s.to_sym
14
14
  case obj
15
- when Hash
15
+ when Array, Hash
16
16
  hash[k] = obj.deeply_symbolize_keys
17
17
  else
18
18
  hash[k] = obj
@@ -21,21 +21,40 @@ class Hash
21
21
  end
22
22
  end
23
23
 
24
+ class Array
25
+ def deeply_symbolize_keys!
26
+ temp = self.deeply_symbolize_keys
27
+ self.clear
28
+ self.push( *temp )
29
+ end
30
+
31
+ def deeply_symbolize_keys
32
+ self.map do |obj|
33
+ case obj
34
+ when Array, Hash
35
+ obj.deeply_symbolize_keys
36
+ else
37
+ obj.dup
38
+ end
39
+ end
40
+ end
41
+ end
42
+
24
43
 
25
44
  ## deeply_stringify_keys
26
45
 
27
46
  class Hash
28
47
  def deeply_stringify_keys!
29
- hash = self.deeply_stringify_keys
48
+ temp = self.deeply_stringify_keys
30
49
  self.clear
31
- self.merge( hash )
50
+ self.merge( temp )
32
51
  end
33
52
 
34
53
  def deeply_stringify_keys
35
54
  self.each_with_object({}) do |(key, obj), hash|
36
55
  k = key.to_s
37
56
  case obj
38
- when Hash
57
+ when Array, Hash
39
58
  hash[k] = obj.deeply_stringify_keys
40
59
  else
41
60
  hash[k] = obj
@@ -44,16 +63,39 @@ class Hash
44
63
  end
45
64
  end
46
65
 
66
+ class Array
67
+ def deeply_stringify_keys!
68
+ temp = self.deeply_stringify_keys
69
+ self.clear
70
+ self.push( *temp )
71
+ end
72
+
73
+ def deeply_stringify_keys
74
+ self.map do |obj|
75
+ case obj
76
+ when Array, Hash
77
+ obj.deeply_stringify_keys
78
+ else
79
+ obj.dup
80
+ end
81
+ end
82
+ end
83
+ end
84
+
47
85
 
48
86
  ## deeply_merge
49
87
 
50
88
  class Hash
51
89
  def deeply_merge( hash )
52
- self.dup.deeply_merge!( hash )
90
+ raise ArgumentError( "type invalid. : %s" % hash ) unless hash.is_a? Hash
91
+
92
+ temp = self.deeply_dup
93
+ temp.deeply_merge!( hash )
94
+ temp
53
95
  end
54
96
 
55
97
  def deeply_merge!( hash )
56
- raise ArgumentError("Type Invalid.") unless Hash === hash
98
+ raise ArgumentError( "type invalid. : %s" % hash ) unless hash.is_a? Hash
57
99
 
58
100
  hash.each do |key, obj|
59
101
  case obj
@@ -74,7 +116,9 @@ end
74
116
 
75
117
  class Hash
76
118
  def deeply_map( &block )
77
- self.dup.deeply_map!( &block )
119
+ temp = self.deeply_dup
120
+ temp.deeply_map!( &block )
121
+ temp
78
122
  end
79
123
 
80
124
  def deeply_map!( &block )
@@ -93,7 +137,9 @@ end
93
137
 
94
138
  class Array
95
139
  def deeply_map( &block )
96
- self.dup.deeply_map!( &block )
140
+ temp = self.deeply_dup
141
+ temp.deeply_map!( &block )
142
+ temp
97
143
  end
98
144
 
99
145
  def deeply_map!( &block )
@@ -1,5 +1,5 @@
1
1
  module App
2
2
  module Config
3
- VERSION = "0.1.0"
3
+ VERSION = "0.1.1"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: app-configs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - arimay
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-10-25 00:00:00.000000000 Z
11
+ date: 2020-10-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake