lib/rules/multiline-comment-style.js
function isJSDoc(commentGroup) {
            const lines = commentGroup[0].value.split(astUtils.LINEBREAK_MATCHER);

            return commentGroup[0].type === "Block" &&
                /^\*\s*$/u.test(lines[0]) &&
                lines.slice(1, -1).every(line => /^\s* /u.test(line)) &&
                /^\s*$/u.test(lines[lines.length - 1]);
        }
function isJSDoc(commentGroup) {
            const lines = commentGroup[0].value.split(astUtils.LINEBREAK_MATCHER);

            return commentGroup[0].type === "Block" &&
                /^\*\s*$/u.test(lines[0]) &&
                lines.slice(1, -1).every(line => /^\s* /u.test(line)) &&
                /^\s*$/u.test(lines[lines.length - 1]);
        }
function isJSDoc ( commentGroup ) { const lines = commentGroup [ 0 ] . value . split ( astUtils . LINEBREAK_MATCHER ) ; return commentGroup [ 0 ] . type === "Block" && / ^\*\s*$ / u . test ( lines [ 0 ] ) && lines . slice ( 1 , - 1 ) . every ( line => / ^\s*  / u . test ( line ) ) && / ^\s*$ / u . test ( lines [ lines . length - 1 ] ) ; }
Check a comment is JSDoc form
@param {Token[]} commentGroup A group of comments, containing either multiple line comments or a single block comment
@returns {boolean} if commentGroup is JSDoc form, return true
Check a comment is JSDoc form