Class: Module
- Inherits:
-
Object
- Object
- Module
- Defined in:
- lib/doc/core_ext.rb
Instance Method Summary collapse
Instance Method Details
#abstract_method(*names) ⇒ Object
38 39 40 41 42 43 44 45 46 |
# File 'lib/doc/core_ext.rb', line 38 def abstract_method(*names) names.each do |name| class_eval <<-RUBY, __FILE__, __LINE__ def #{name}(*_) raise NotImplementedError.new("\#{self.class.name} has no implementation for method `#{name}`") end RUBY end end |
#smart_autoload(*names) ⇒ Object
32 33 34 35 36 |
# File 'lib/doc/core_ext.rb', line 32 def smart_autoload(*names) names.each do |name| autoload name, "#{self}::#{name}".underscore end end |