From 7f0258bcb987d543f3638a97c5ecd60c8f1882ab Mon Sep 17 00:00:00 2001 From: Andy Date: Fri, 18 May 2018 13:20:13 -0700 Subject: [PATCH] getJSDocHost always returns a defined result (#24255) --- src/compiler/checker.ts | 3 +-- src/compiler/utilities.ts | 6 +----- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index 2650e50a04e..ba85e090265 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -2172,8 +2172,7 @@ namespace ts { return; } const host = getJSDocHost(node); - if (host && - isExpressionStatement(host) && + if (isExpressionStatement(host) && isBinaryExpression(host.expression) && getSpecialPropertyAssignmentKind(host.expression) === SpecialPropertyAssignmentKind.PrototypeProperty) { const symbol = getSymbolOfNode(host.expression.left); diff --git a/src/compiler/utilities.ts b/src/compiler/utilities.ts index fa6f65640da..300c6421dbc 100644 --- a/src/compiler/utilities.ts +++ b/src/compiler/utilities.ts @@ -1927,11 +1927,7 @@ namespace ts { } export function getJSDocHost(node: Node): HasJSDoc { - const comment = findAncestor(node.parent, - node => !(isJSDocNode(node) || node.flags & NodeFlags.JSDoc) ? "quit" : node.kind === SyntaxKind.JSDocComment); - if (comment) { - return (comment as JSDoc).parent; - } + return Debug.assertDefined(findAncestor(node.parent, isJSDoc)).parent; } export function getTypeParameterFromJsDoc(node: TypeParameterDeclaration & { parent: JSDocTemplateTag }): TypeParameterDeclaration | undefined {