List<CharSequence> (@NotNull MergeLineFragment fragment, @NotNull List<? extends CharSequence> sequences, @NotNull List<? extends LineOffsets> lineOffsets, @NotNull MergeConflictType conflictType) { return ThreeSide.map(side -> { if (!conflictType.isChange(side)) return null; int startLine = fragment.getStartLine(side); int endLine = fragment.getEndLine(side); if (startLine == endLine) return null; return DiffRangeUtil.getLinesContent(side.select(sequences), side.select(lineOffsets), startLine, endLine); }); }