Fix method visibility in inline diff class
This commit is contained in:
parent
e15b63b34e
commit
20a5033d79
|
|
@ -19,24 +19,6 @@ module Gitlab
|
||||||
|
|
||||||
attr_accessor :old_line, :new_line, :offset
|
attr_accessor :old_line, :new_line, :offset
|
||||||
|
|
||||||
def self.for_lines(lines)
|
|
||||||
changed_line_pairs = self.find_changed_line_pairs(lines)
|
|
||||||
|
|
||||||
inline_diffs = []
|
|
||||||
|
|
||||||
changed_line_pairs.each do |old_index, new_index|
|
|
||||||
old_line = lines[old_index]
|
|
||||||
new_line = lines[new_index]
|
|
||||||
|
|
||||||
old_diffs, new_diffs = new(old_line, new_line, offset: 1).inline_diffs
|
|
||||||
|
|
||||||
inline_diffs[old_index] = old_diffs
|
|
||||||
inline_diffs[new_index] = new_diffs
|
|
||||||
end
|
|
||||||
|
|
||||||
inline_diffs
|
|
||||||
end
|
|
||||||
|
|
||||||
def initialize(old_line, new_line, offset: 0)
|
def initialize(old_line, new_line, offset: 0)
|
||||||
@old_line = old_line[offset..-1]
|
@old_line = old_line[offset..-1]
|
||||||
@new_line = new_line[offset..-1]
|
@new_line = new_line[offset..-1]
|
||||||
|
|
@ -63,10 +45,29 @@ module Gitlab
|
||||||
[old_diffs, new_diffs]
|
[old_diffs, new_diffs]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
class << self
|
||||||
|
def for_lines(lines)
|
||||||
|
changed_line_pairs = find_changed_line_pairs(lines)
|
||||||
|
|
||||||
|
inline_diffs = []
|
||||||
|
|
||||||
|
changed_line_pairs.each do |old_index, new_index|
|
||||||
|
old_line = lines[old_index]
|
||||||
|
new_line = lines[new_index]
|
||||||
|
|
||||||
|
old_diffs, new_diffs = new(old_line, new_line, offset: 1).inline_diffs
|
||||||
|
|
||||||
|
inline_diffs[old_index] = old_diffs
|
||||||
|
inline_diffs[new_index] = new_diffs
|
||||||
|
end
|
||||||
|
|
||||||
|
inline_diffs
|
||||||
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
# Finds pairs of old/new line pairs that represent the same line that changed
|
# Finds pairs of old/new line pairs that represent the same line that changed
|
||||||
def self.find_changed_line_pairs(lines)
|
def find_changed_line_pairs(lines)
|
||||||
# Prefixes of all diff lines, indicating their types
|
# Prefixes of all diff lines, indicating their types
|
||||||
# For example: `" - + -+ ---+++ --+ -++"`
|
# For example: `" - + -+ ---+++ --+ -++"`
|
||||||
line_prefixes = lines.each_with_object("") { |line, s| s << line[0] }.gsub(/[^ +-]/, ' ')
|
line_prefixes = lines.each_with_object("") { |line, s| s << line[0] }.gsub(/[^ +-]/, ' ')
|
||||||
|
|
@ -88,6 +89,9 @@ module Gitlab
|
||||||
|
|
||||||
changed_line_pairs
|
changed_line_pairs
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
|
||||||
def longest_common_prefix(a, b)
|
def longest_common_prefix(a, b)
|
||||||
max_length = [a.length, b.length].max
|
max_length = [a.length, b.length].max
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue