class RuboCop::Cop::Style::ParallelAssignment::GenericCorrector
An internal class for correcting parallel assignment
Attributes
Public Class Methods
Source
# File lib/rubocop/cop/style/parallel_assignment.rb, line 186 def initialize(node, rhs, modifier, config, new_elements) @node = node @rhs = rhs _, _, @rescue_result = *modifier @config = config @new_elements = new_elements end
Public Instance Methods
Source
# File lib/rubocop/cop/style/parallel_assignment.rb, line 194 def correction assignment.join("\n#{offset(node)}") end
Source
# File lib/rubocop/cop/style/parallel_assignment.rb, line 198 def correction_range node.source_range end
Protected Instance Methods
Source
# File lib/rubocop/cop/style/parallel_assignment.rb, line 204 def assignment @new_elements.map { |lhs, rhs| "#{lhs.source} = #{source(rhs, rhs.loc)}" } end
Private Instance Methods
Source
# File lib/rubocop/cop/style/parallel_assignment.rb, line 225 def cop_config @config.for_cop('Style/ParallelAssignment') end
Source
# File lib/rubocop/cop/style/parallel_assignment.rb, line 221 def extract_sources(node) node.children.map(&:source) end
Source
# File lib/rubocop/cop/style/parallel_assignment.rb, line 210 def source(node, loc) # __FILE__ is treated as a StrNode but has no begin if node.str_type? && loc.respond_to?(:begin) && loc.begin.nil? "'#{node.source}'" elsif node.sym_type? && loc.begin.nil? ":#{node.source}" else node.source end end