Let Correctable#original_message skip prepended method definitions
Previously, DidYouMean::Correctable#original_message did method(:to_s).super_method.call to call the original to_s method by skipping Correctable#to_s.
I'm now creating a gem that prepends another to_s method to NameError, which confuses the hack. An immediate solution is to replace it with method(:to_s).super_method.super_method.call to skip the two methods. But it is too ad-hoc.
This changeset uses more extensible approach and allow a prepended module to declare that they should be skipped by defining a constant named SKIP_TO_S_FOR_SUPER_LOOKUP.
Let Correctable#original_message skip prepended method definitions
Previously, DidYouMean::Correctable#original_message did
method(:to_s).super_method.callto call the original to_s method byskipping Correctable#to_s.
I'm now creating a gem that prepends another to_s method to NameError,
which confuses the hack. An immediate solution is to replace it with
method(:to_s).super_method.super_method.callto skip the two methods.But it is too ad-hoc.
This changeset uses more extensible approach and allow a prepended
module to declare that they should be skipped by defining a constant
named
SKIP_TO_S_FOR_SUPER_LOOKUP.https://github.com/ruby/did_you_mean/commit/8352c154e3