class RuboCop::Cop::Style::StringConcatenation
def on_send(node)
def on_send(node) return unless string_concatenation?(node) topmost_plus_node = find_topmost_plus_node(node) parts = [] collect_parts(topmost_plus_node, parts) add_offense(topmost_plus_node) do |corrector| correctable_parts = parts.none? { |part| uncorrectable?(part) } if correctable_parts && !corrected_ancestor?(topmost_plus_node) corrector.replace(topmost_plus_node, replacement(parts)) @corrected_nodes ||= Set.new.compare_by_identity @corrected_nodes.add(topmost_plus_node) end end end