(node)
| 47647 | return extendsType && extendsType.parent; |
| 47648 | } |
| 47649 | function bindTypeParameter(node) { |
| 47650 | if (ts.isJSDocTemplateTag(node.parent)) { |
| 47651 | var container_1 = ts.getEffectiveContainerForJSDocTemplateTag(node.parent); |
| 47652 | if (container_1) { |
| 47653 | if (!container_1.locals) { |
| 47654 | container_1.locals = ts.createSymbolTable(); |
| 47655 | } |
| 47656 | declareSymbol(container_1.locals, /*parent*/ undefined, node, 262144 /* SymbolFlags.TypeParameter */, 526824 /* SymbolFlags.TypeParameterExcludes */); |
| 47657 | } |
| 47658 | else { |
| 47659 | declareSymbolAndAddToSymbolTable(node, 262144 /* SymbolFlags.TypeParameter */, 526824 /* SymbolFlags.TypeParameterExcludes */); |
| 47660 | } |
| 47661 | } |
| 47662 | else if (node.parent.kind === 190 /* SyntaxKind.InferType */) { |
| 47663 | var container_2 = getInferTypeContainer(node.parent); |
| 47664 | if (container_2) { |
| 47665 | if (!container_2.locals) { |
| 47666 | container_2.locals = ts.createSymbolTable(); |
| 47667 | } |
| 47668 | declareSymbol(container_2.locals, /*parent*/ undefined, node, 262144 /* SymbolFlags.TypeParameter */, 526824 /* SymbolFlags.TypeParameterExcludes */); |
| 47669 | } |
| 47670 | else { |
| 47671 | bindAnonymousDeclaration(node, 262144 /* SymbolFlags.TypeParameter */, getDeclarationName(node)); // TODO: GH#18217 |
| 47672 | } |
| 47673 | } |
| 47674 | else { |
| 47675 | declareSymbolAndAddToSymbolTable(node, 262144 /* SymbolFlags.TypeParameter */, 526824 /* SymbolFlags.TypeParameterExcludes */); |
| 47676 | } |
| 47677 | } |
| 47678 | // reachability checks |
| 47679 | function shouldReportErrorOnModuleDeclaration(node) { |
| 47680 | var instanceState = getModuleInstanceState(node); |
no test coverage detected
searching dependent graphs…