| Module | RSS::Utils::InheritedReader |
| In: |
lib/rss/utils.rb
|
# File lib/rss/utils.rb, line 98
98: def inherited_array_reader(constant_name)
99: inherited_reader(constant_name) do |result, current|
100: current + result
101: end
102: end
# File lib/rss/utils.rb, line 104
104: def inherited_hash_reader(constant_name)
105: inherited_reader(constant_name) do |result, current|
106: result.merge(current)
107: end
108: end
# File lib/rss/utils.rb, line 82
82: def inherited_reader(constant_name)
83: base_class = inherited_base
84: result = base_class.const_get(constant_name)
85: found_base_class = false
86: ancestors.reverse_each do |klass|
87: if found_base_class
88: if klass.const_defined?(constant_name)
89: result = yield(result, klass.const_get(constant_name))
90: end
91: else
92: found_base_class = klass == base_class
93: end
94: end
95: result
96: end