class Differ::Diff
def same(*str)
def same(*str) return if str.empty? if @raw.last.is_a? String @raw.last << sep elsif @raw.last.is_a? Change if @raw.last.change? @raw << sep else change = @raw.pop if change.insert? && @raw.last @raw.last << sep if change.insert.sub!(/^#{Regexp.quote(sep)}/, '') end if change.delete? && @raw.last @raw.last << sep if change.delete.sub!(/^#{Regexp.quote(sep)}/, '') end @raw << change @raw.last.insert << sep if @raw.last.insert? @raw.last.delete << sep if @raw.last.delete? @raw << '' end else @raw << '' end @raw.last << str.join(sep) end