finalizable 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/Gemfile.lock +1 -1
- data/lib/finalizable/finalization.rb +5 -4
- data/lib/finalizable/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 22c4c5268545c566124a43ec12c7a62a00105aad6ce9f357c688e8a9ec0f2b46
|
4
|
+
data.tar.gz: cf6e68a31db032477ae02cc43a1452ac5b8b9344c1dec6ea5aa5caad6362ae34
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7a5fa9e08bcc1809935317e9966a709b3f2d67eaf23401b2652220790025c7c1f88cde8dfd056913a83f43c0702113e07812acd9b6624f98c25ece5eaeebb66d
|
7
|
+
data.tar.gz: dafd5bdd2096fc3c21fa8f24fdf6f8ac7785535812fd4e5a2c29eaaed73f82d07eae325d7ff0c0bf5fa9b986ffa14cbda0e326051df2b481557df9828030b830
|
data/Gemfile.lock
CHANGED
@@ -16,15 +16,16 @@ module Finalizable
|
|
16
16
|
end
|
17
17
|
|
18
18
|
def method_added(method_name)
|
19
|
+
super(method_name)
|
19
20
|
prevent_override?(method_name)
|
20
21
|
end
|
21
22
|
|
22
23
|
def prevent_override?(method_name)
|
23
|
-
|
24
|
-
|
24
|
+
raise_error_if_prohibited_methods_is_overridden(method_name)
|
25
|
+
warn_if_prohibited_methods_is_overridden(method_name)
|
25
26
|
end
|
26
27
|
|
27
|
-
def
|
28
|
+
def raise_error_if_prohibited_methods_is_overridden(method_name)
|
28
29
|
@@final_methods.each do |class_name, final_methods|
|
29
30
|
ancestors = self.ancestors.dup
|
30
31
|
ancestors.shift # remove myself from the list
|
@@ -34,7 +35,7 @@ module Finalizable
|
|
34
35
|
end
|
35
36
|
end
|
36
37
|
|
37
|
-
def
|
38
|
+
def warn_if_prohibited_methods_is_overridden(method_name)
|
38
39
|
@@somewhat_final_methods.each do |class_name, final_methods|
|
39
40
|
ancestors = self.ancestors.dup
|
40
41
|
ancestors.shift # remove myself from the list
|
data/lib/finalizable/version.rb
CHANGED