Class Module
In: lib/abstract.rb
Parent: Object
Module Kernel dot/f_0.png

Methods

Public Instance methods

define abstract methods

[Source]

    # File lib/abstract.rb, line 41
41:   def abstract_method args_str, *method_names
42:     method_names.each do |name|
43:       module_eval "def \#{name}(\#{args_str})\nmesg = \"class \\\#{self.class.name} must implement abstract method `\#{self.name}#\#{name}()'.\"\n#mesg = \"\\\#{self.class.name}#\#{name}() is not implemented.\"\nerr = NotImplementedError.new mesg\nerr.set_backtrace caller()\nraise err\nend\n"
44:     end
45:   end

[Validate]