container 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/container/version.rb +1 -1
- data/lib/container.rb +17 -3
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bb9cc8e449bcfea00a468e9e4328c2da62f75b97
|
4
|
+
data.tar.gz: ffeaec2dd89b6819f512c9cb80c56bd78a643818
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cad7e60e94f7d64ccf84ec2283032c9e5c18e59b875ccc2edd3cd2d802338ffb2f4651f2a2fa947bc9709f40c5484343718d4980d10b95efe73096afc91f91d4
|
7
|
+
data.tar.gz: eab9a86c9d49e06bf08b95b3794b553f3db7771472ccbe42382a5053dc89d8c4c638cfb754d6b64a92b8b1c5254af5ef1c4759ebc55de5421df30af3b98d68ed
|
data/lib/container/version.rb
CHANGED
data/lib/container.rb
CHANGED
@@ -29,9 +29,17 @@ class Container
|
|
29
29
|
|
30
30
|
def [](key)
|
31
31
|
if key.is_a?(Numeric)
|
32
|
-
@array[key]
|
32
|
+
safe @array[key]
|
33
33
|
else
|
34
|
-
@hash[key]
|
34
|
+
safe @hash[key]
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
def safe(value)
|
39
|
+
if value.nil?
|
40
|
+
NullObject.new
|
41
|
+
else
|
42
|
+
value
|
35
43
|
end
|
36
44
|
end
|
37
45
|
|
@@ -71,7 +79,13 @@ class Container
|
|
71
79
|
@hash[hash_key] = arguments.first
|
72
80
|
else
|
73
81
|
if @hash.keys.include?(hash_key)
|
74
|
-
@hash[hash_key]
|
82
|
+
return_value = @hash[hash_key]
|
83
|
+
|
84
|
+
if return_value.nil?
|
85
|
+
NullObject.new
|
86
|
+
else
|
87
|
+
return_value
|
88
|
+
end
|
75
89
|
else
|
76
90
|
NullObject.new
|
77
91
|
end
|