class RuboCop::Cop::DarkFinger::ModuleAncestorChainExtractor

Attributes

node[R]

Public Class Methods

new(node) click to toggle source
# File lib/rubocop/cop/dark_finger/module_ancestor_chain_extractor.rb, line 7
def initialize(node)
  @node = node
end

Public Instance Methods

perform() click to toggle source
# File lib/rubocop/cop/dark_finger/module_ancestor_chain_extractor.rb, line 11
def perform
  module_chain = [node.children.first.const_name]

  current_node = node
  while current_node.parent && current_node.parent.module_type?
    module_chain << current_node.parent.children.first.const_name
    current_node = current_node.parent
  end

  module_chain.reverse.join("::")
end