case "arg": case "argument": if (!tag.type) { context.report({ node: jsdocNode, message: "Missing JSDoc parameter type for '{{name}}'.", data: { name: tag.name } }); hasReturns = true; if (!requireReturn && !functionData.returnPresent && (tag.type === null || !isValidReturnType(tag)) && !isAbstract) { context.report({ node: jsdocNode, if (requireReturnType && !tag.type) { context.report({ node: jsdocNode, message: "Missing JSDoc return type." }); if (checkPreferType && tag.type) { validateType(jsdocNode, tag.type); if (param.type === "AssignmentPattern") { param = param.left; if (param.type === "Identifier") { if (jsdocParams[i] && (name !== jsdocParams[i])) { context.report({ node: jsdocNode, message: "Expected JSDoc for '{{name}}' but found '{{jsdocName}}'.", data: {