module DidYouMean::Correctable - Documentation for Ruby 4.0
Description: Documentation for the DidYouMean::Correctable module
Keywords: ruby,module,DidYouMean::Correctable

🔍

No recent searches

# module DidYouMean::Correctable

### Constants

SKIP_TO_S_FOR_SUPER_LOOKUP

### Public Instance Methods

corrections ()
Source

    # File lib/did_you_mean/core_ext/name_error.rb, line 49
    def corrections
      @corrections ||= spell_checker.corrections
    end

detailed_message (highlight: true, did_you_mean: true, **)
Source

    # File lib/did_you_mean/core_ext/name_error.rb, line 10
    def detailed_message(highlight: true, did_you_mean: true, **)
      msg = super.dup

      return msg unless did_you_mean

      suggestion = DidYouMean.formatter.message_for(corrections)

      if highlight
        suggestion = suggestion.gsub(/.+/) { "\e[1m" + $& + "\e[m" }
      end

      msg << suggestion
      msg
    rescue
      super
    end

Calls superclass method
original_message ()
Source

    # File lib/did_you_mean/core_ext/name_error.rb, line 5
    def original_message
      # we cannot use alias here because
      to_s
    end

just for compatibility

spell_checker ()
Source

    # File lib/did_you_mean/core_ext/name_error.rb, line 53
    def spell_checker
      DidYouMean.spell_checkers[self.class.to_s].new(self)
    end

to_s ()
Source

    # File lib/did_you_mean/core_ext/name_error.rb, line 38
    def to_s
      msg = super.dup
      suggestion = DidYouMean.formatter.message_for(corrections)

      msg << suggestion if !msg.include?(suggestion)
      msg
    rescue
      super
    end

Calls superclass method