Class: WhyClasses::DisableComments::Directives

Inherits:
Data
  • Object
show all
Defined in:
lib/why_classes/disable_comments.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#file_rulesObject (readonly)

Returns the value of attribute file_rules

Returns:

  • (Object)

    the current value of file_rules



12
13
14
# File 'lib/why_classes/disable_comments.rb', line 12

def file_rules
  @file_rules
end

#line_rulesObject (readonly)

Returns the value of attribute line_rules

Returns:

  • (Object)

    the current value of line_rules



12
13
14
# File 'lib/why_classes/disable_comments.rb', line 12

def line_rules
  @line_rules
end

Instance Method Details

#allow?(offense) ⇒ Boolean

Returns:

  • (Boolean)


13
14
15
16
17
# File 'lib/why_classes/disable_comments.rb', line 13

def allow?(offense)
  return false if suppressed?(file_rules, offense.rule_name)

  !suppressed?(line_rules.fetch(offense.line, nil), offense.rule_name)
end

#suppressed?(set, rule_name) ⇒ Boolean

Returns:

  • (Boolean)


19
20
21
22
23
# File 'lib/why_classes/disable_comments.rb', line 19

def suppressed?(set, rule_name)
  return false if set.nil?

  set.include?(:all) || set.include?(rule_name)
end