List<LineIndentInfo> () { List<Block> newLineBlocks = getBlocksStartingNewLine(); return ContainerUtil.map(newLineBlocks, newLineBlock -> { int blockStartOffset = newLineBlock.getTextRange().getStartOffset(); int line = myDocument.getLineNumber(blockStartOffset); int lineStartOffset = myDocument.getLineStartOffset(line); if (rangeHasTabs(lineStartOffset, blockStartOffset)) { return LineIndentInfo.LINE_WITH_TABS; } if (hasNormalIndent(newLineBlock)) { return LineIndentInfo.newNormalIndent(blockStartOffset - lineStartOffset); } else { return LineIndentInfo.LINE_WITH_NOT_COUNTABLE_INDENT; } }); }