app-configs 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/app/config/deeply.rb +56 -10
- data/lib/app/config/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2ee7136673ea33c00302c032a8f0ecc707055b977ac632bf57dbc77ff1518f9b
|
4
|
+
data.tar.gz: 5dece7059581ae470d10b03299b524ef65b0db3ed2a8b8d3132cee4cb21d76eb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 88a4b4c61dfe2e3f687897a6a740a63fc02981e75fccb3d0b0ca74a31ecfc9e68bafee3933f1fce0690c30c757961cf72b52915f828423eb223c175d12070cc7
|
7
|
+
data.tar.gz: 1f5f9ef8f8f15aa07369405b0da3a3df799b01e34b46d06eed856673548f7b057dccb422cbdd5d7d4998d61c2905cb285baf3b1d1855b93908e420c4d63e3db1
|
data/lib/app/config/deeply.rb
CHANGED
@@ -3,16 +3,16 @@
|
|
3
3
|
|
4
4
|
class Hash
|
5
5
|
def deeply_symbolize_keys!
|
6
|
-
|
6
|
+
temp = self.deeply_symbolize_keys
|
7
7
|
self.clear
|
8
|
-
self.merge(
|
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
|
-
|
48
|
+
temp = self.deeply_stringify_keys
|
30
49
|
self.clear
|
31
|
-
self.merge(
|
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
|
-
|
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("
|
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.
|
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.
|
140
|
+
temp = self.deeply_dup
|
141
|
+
temp.deeply_map!( &block )
|
142
|
+
temp
|
97
143
|
end
|
98
144
|
|
99
145
|
def deeply_map!( &block )
|
data/lib/app/config/version.rb
CHANGED
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.
|
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-
|
11
|
+
date: 2020-10-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|