Class: Module

Inherits:
Object
  • Object
show all
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 "      def \#{name}(*_)\n        raise NotImplementedError.new(\"\\\#{self.class.name} has no implementation for method `\#{name}`\")\n      end\n    RUBY\n  end\nend\n", __FILE__, __LINE__

#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