Module: Pour::Mould::ClassMethods
- Defined in:
- lib/pour/mould.rb
Instance Method Summary collapse
Instance Method Details
#pour(pourable) ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/pour/mould.rb', line 4 def pour(pourable) unless pourable.included_modules.include?(Pour::Pourable) # TODO(mtwilliams): Use a custom exceptin type, Pour::Unpourable. raise ":(" end poured = self.class_variable_get(:@@__poured__) unless poured.include? pourable self.class_variable_set(:@@__poured__, poured + [pourable]) # This capture all the properties as well as any user-defined methods. self.include(pourable) end end |