boolean (@NotNull ASTNode node) { assert (node.getElementType() == DOC_TAG); ASTNode lastAsterisks = TreeUtil.findChildBackward(node, DOC_COMMENT_LEADING_ASTERISKS); if (lastAsterisks == null || !lastAsterisks.getTreePrev().textContains('\n')) { return false; } //So last asterisk is placed on new line, checking if after it there are no non-whitespace symbols ASTNode last = node.getLastChildNode(); ASTNode current = lastAsterisks; while (current != last) { current = current.getTreeNext(); CharSequence currentText = current.getChars(); if (CharArrayUtil.shiftForward(currentText, 0, " \t") != currentText.length()) return false; } return true; }