Class: MethodDecorator::Repository
- Inherits:
-
Object
- Object
- MethodDecorator::Repository
- Defined in:
- lib/method_decorator/repository.rb
Class Attribute Summary collapse
Class Method Summary collapse
- .add(target_class, target_method_name, target_method, &decoration) ⇒ Object
- .original_target_method_of(target_class, target_method_name) ⇒ Object
Class Attribute Details
.decorations ⇒ Object
27 |
# File 'lib/method_decorator/repository.rb', line 27 def decorations; @decorations ||= [] end |
Class Method Details
.add(target_class, target_method_name, target_method, &decoration) ⇒ Object
9 10 11 12 13 14 15 16 17 |
# File 'lib/method_decorator/repository.rb', line 9 def add(target_class, target_method_name, target_method, &decoration) exists = original_target_method_of target_class, target_method_name self.decorations.push( Decoration.new target_class, target_method_name, target_method, &decoration ) unless exists not exists end |
.original_target_method_of(target_class, target_method_name) ⇒ Object
19 20 21 22 23 24 25 |
# File 'lib/method_decorator/repository.rb', line 19 def original_target_method_of(target_class, target_method_name) decoration = self.decorations.select do |d| d.target_class.eql?(target_class) and d.target_method_name.eql?(target_method_name) end.first decoration ? decoration.target_method : nil end |