Module: SubclassMustImplement::ClassMethods
- Defined in:
- lib/subclass_must_implement.rb
Overview
The class level macros are defined here.
Instance Method Summary collapse
-
#subclass_must_implement(*method_names, err_message: nil) ⇒ Object
Defines a method for each method name that raises a NotImplementedError when called.
Instance Method Details
#subclass_must_implement(*method_names, err_message: nil) ⇒ Object
Defines a method for each method name that raises a NotImplementedError when called. Pass in a custom error message if desired using the err_message named argument.
65 66 67 68 69 70 71 72 |
# File 'lib/subclass_must_implement.rb', line 65 def subclass_must_implement(*method_names, err_message: nil) method_names.each do |method_name| err = .nil? ? "`#{method_name}` must be implemented in a subclass." : "#{}" define_method method_name do |*_| raise NotImplementedError, err end end end |