class RuboCop::Cop::MessageAnnotator
#=> ‘Cop/CopName: message (example.org/styleguide)’
).annotate(‘message’, ‘Cop/CopName’)
config, cop_config, @options
RuboCop::Cop::MessageAnnotator.new(
@example
@see #initialize
based on params passed into initializer.
Message Annotator class annotates a basic offense message
def annotate(message, name)
-
(String)
- annotated message
def annotate(message, name) message = "#{name}: #{message}" if display_cop_names? message += " #{details}" if extra_details? if display_style_guide? links = [style_guide_url, reference_url].compact.join(', ') message = "#{message} (#{links})" end message end
def debug?
def debug? options[:debug] end
def details
def details details = cop_config && cop_config['Details'] details.nil? || details.empty? ? nil : details end
def display_cop_names?
def display_cop_names? debug? || options[:display_cop_names] || config.for_all_cops['DisplayCopNames'] end
def display_style_guide?
def display_style_guide? (style_guide_url || reference_url) && (options[:display_style_guide] || config.for_all_cops['DisplayStyleGuide']) end
def extra_details?
def extra_details? options[:extra_details] || config.for_all_cops['ExtraDetails'] end
def initialize(config, cop_config, options)
(**option)
-
:display_cop_names
(Boolean
) -- -
:debug
(Boolean
) -- -
:extra_details
(Boolean
) -- -
:display_style_guide
(Boolean
) -- -
:Details
(String
) -- -
:Reference
(String
) -- Full reference URL -
:StyleGuide
(String
) -- Extension of base styleguide URL
Parameters:
-
options
(Hash
) -- -
cop_config
(Hash
) -- configs for specific cop, from config#for_cop -
config
(RuboCop::Config
) -- Check configs for all cops
Other tags:
- Note: - Message Annotator specifically checks the
def initialize(config, cop_config, options) @config = config @cop_config = cop_config || {} @options = options end
def reference_url
def reference_url url = cop_config['Reference'] url.nil? || url.empty? ? nil : url end
def style_guide_url
def style_guide_url url = cop_config['StyleGuide'] return nil if url.nil? || url.empty? base_url = config.for_all_cops['StyleGuideBaseURL'] return url if base_url.nil? || base_url.empty? URI.join(base_url, url).to_s end