give jsdoc outline span before func exp assigned to var

This commit is contained in:
Benjamin Lichtman 2018-12-31 15:10:22 -08:00
parent d3bcb82c6b
commit 34970d8a69

View File

@ -37,6 +37,10 @@ namespace ts.OutliningElementsCollector {
addOutliningForLeadingCommentsForNode(n, sourceFile, cancellationToken, out);
}
if (isFunctionExpressionAssignedToVariable(n)) {
addOutliningForLeadingCommentsForNode(n.parent.parent.parent, sourceFile, cancellationToken, out);
}
const span = getOutliningSpanForNode(n, sourceFile);
if (span) out.push(span);
@ -54,6 +58,12 @@ namespace ts.OutliningElementsCollector {
}
depthRemaining++;
}
function isFunctionExpressionAssignedToVariable(n: Node) {
return (isFunctionExpression(n) || isArrowFunction(n)) &&
n.parent && n.parent.parent && n.parent.parent.parent &&
isVariableStatement(n.parent.parent.parent);
}
}
function addRegionOutliningSpans(sourceFile: SourceFile, out: Push<OutliningSpan>): void {