Exception: ErrorHandlingProtocol::SubclassResponsibilityError

Inherits:
NameError
  • Object
show all
Defined in:
lib/error_handling_protocol/subclass_responsibility_error.rb

Class Method Summary collapse

Class Method Details

.class_side_responsibility_error_message(a_method_name, a_subclass) ⇒ Object



9
10
11
# File 'lib/error_handling_protocol/subclass_responsibility_error.rb', line 9

def self.class_side_responsibility_error_message a_method_name, a_subclass
  self.responsibility_to_implement_method_error_message a_method_name, :class, a_subclass
end

.instance_side_responsibility_error_message(a_method_name, a_subclass) ⇒ Object



5
6
7
# File 'lib/error_handling_protocol/subclass_responsibility_error.rb', line 5

def self.instance_side_responsibility_error_message a_method_name, a_subclass
  self.responsibility_to_implement_method_error_message a_method_name, :instance, a_subclass
end

.responsibility_to_implement_method_error_message(a_method_name, a_message_side, a_subclass) ⇒ Object



13
14
15
# File 'lib/error_handling_protocol/subclass_responsibility_error.rb', line 13

def self.responsibility_to_implement_method_error_message a_method_name, a_message_side, a_subclass
  "#{a_subclass} had the responsibility to implement :#{a_method_name} #{a_message_side} method."
end

.to_implement_class_method_on(a_method_name, a_subclass) ⇒ Object



22
23
24
# File 'lib/error_handling_protocol/subclass_responsibility_error.rb', line 22

def self.to_implement_class_method_on a_method_name, a_subclass
  self.new self.class_side_responsibility_error_message(a_method_name, a_subclass), a_method_name
end

.to_implement_instance_method_on(a_method_name, a_subclass_instance) ⇒ Object



18
19
20
# File 'lib/error_handling_protocol/subclass_responsibility_error.rb', line 18

def self.to_implement_instance_method_on a_method_name, a_subclass_instance
  self.new self.instance_side_responsibility_error_message(a_method_name, a_subclass_instance.class), a_method_name
end