Merge pull request #25342 from ajafff/factory-leftmost-expression

getLeftmostExpression: handle AsExpression and NonNullExpression
This commit is contained in:
Daniel Rosenwasser
2018-07-03 18:02:04 -07:00
committed by GitHub
3 changed files with 29 additions and 6 deletions

View File

@@ -4354,19 +4354,17 @@ namespace ts {
case SyntaxKind.ConditionalExpression:
node = (<ConditionalExpression>node).condition;
continue;
case SyntaxKind.CallExpression:
if (stopAtCallExpressions) {
return node;
}
// falls through
case SyntaxKind.AsExpression:
case SyntaxKind.ElementAccessExpression:
case SyntaxKind.PropertyAccessExpression:
node = (<CallExpression | PropertyAccessExpression | ElementAccessExpression>node).expression;
continue;
case SyntaxKind.NonNullExpression:
case SyntaxKind.PartiallyEmittedExpression:
node = (<PartiallyEmittedExpression>node).expression;
node = (<CallExpression | PropertyAccessExpression | ElementAccessExpression | AsExpression | NonNullExpression | PartiallyEmittedExpression>node).expression;
continue;
}