Class: DidYouMean::Formatter

Inherits:
Object
  • Object
show all
Defined in:
lib/did_you_mean/formatter.rb

Overview

The DidYouMean::Formatter is the basic, default formatter for the gem. The formatter responds to the message_for method and it returns a human readable string.

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.message_for(corrections) ⇒ Object

Returns a human readable string that contains corrections. This formatter is designed to be less verbose to not take too much screen space while being helpful enough to the user.

Examples:


formatter = DidYouMean::Formatter.new

# displays suggestions in two lines with the leading empty line
puts formatter.message_for(["methods", "method"])

Did you mean?  methods
                method
# => nil

# displays an empty line
puts formatter.message_for([])

# => nil


29
30
31
# File 'lib/did_you_mean/formatter.rb', line 29

def self.message_for(corrections)
  corrections.empty? ? "" : "\nDid you mean?  #{corrections.join("\n               ")}"
end

Instance Method Details

#message_for(corrections) ⇒ Object



33
34
35
36
37
38
# File 'lib/did_you_mean/formatter.rb', line 33

def message_for(corrections)
  warn "The instance method #message_for has been deprecated. Please use the class method " \
       "DidYouMean::Formatter.message_for(...) instead."

  self.class.message_for(corrections)
end