Module: Rubocop::Cop::IgnoredNode

Included in:
Cop, Style::AlignHash
Defined in:
lib/rubocop/cop/ignored_node.rb

Overview

Handles adding and checking ignored nodes.

Instance Method Summary collapse

Instance Method Details

#ignore_node(node) ⇒ Object



7
8
9
10
# File 'lib/rubocop/cop/ignored_node.rb', line 7

def ignore_node(node)
  @ignored_nodes ||= []
  @ignored_nodes << node
end

#ignored_node?(node) ⇒ Boolean

Returns:

  • (Boolean)


25
26
27
28
# File 'lib/rubocop/cop/ignored_node.rb', line 25

def ignored_node?(node)
  # Same object found in array?
  @ignored_nodes && @ignored_nodes.any? { |n| n.eql?(node) }
end

#part_of_ignored_node?(node) ⇒ Boolean

Returns:

  • (Boolean)


12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/rubocop/cop/ignored_node.rb', line 12

def part_of_ignored_node?(node)
  return false unless @ignored_nodes
  expression = node.loc.expression
  @ignored_nodes.each do |ignored_node|
    if ignored_node.loc.expression.begin_pos <= expression.begin_pos &&
      ignored_node.loc.expression.end_pos >= expression.end_pos
      return true
    end
  end

  false
end