Merge pull request #16026 from Microsoft/importEqualsMethod
buildSymbolDisplay: Handle alias parentSymbol
This commit is contained in:
commit
8b15e2b523
|
@ -2033,7 +2033,7 @@ namespace ts {
|
||||||
ts.forEach(symbolFromSymbolTable.declarations, isExternalModuleImportEqualsDeclaration)) {
|
ts.forEach(symbolFromSymbolTable.declarations, isExternalModuleImportEqualsDeclaration)) {
|
||||||
|
|
||||||
const resolvedImportedSymbol = resolveAlias(symbolFromSymbolTable);
|
const resolvedImportedSymbol = resolveAlias(symbolFromSymbolTable);
|
||||||
if (isAccessible(symbolFromSymbolTable, resolveAlias(symbolFromSymbolTable))) {
|
if (isAccessible(symbolFromSymbolTable, resolvedImportedSymbol)) {
|
||||||
return [symbolFromSymbolTable];
|
return [symbolFromSymbolTable];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3093,8 +3093,8 @@ namespace ts {
|
||||||
// Write type arguments of instantiated class/interface here
|
// Write type arguments of instantiated class/interface here
|
||||||
if (flags & SymbolFormatFlags.WriteTypeParametersOrArguments) {
|
if (flags & SymbolFormatFlags.WriteTypeParametersOrArguments) {
|
||||||
if (getCheckFlags(symbol) & CheckFlags.Instantiated) {
|
if (getCheckFlags(symbol) & CheckFlags.Instantiated) {
|
||||||
buildDisplayForTypeArgumentsAndDelimiters(getTypeParametersOfClassOrInterface(parentSymbol),
|
const params = getTypeParametersOfClassOrInterface(parentSymbol.flags & SymbolFlags.Alias ? resolveAlias(parentSymbol) : parentSymbol);
|
||||||
(<TransientSymbol>symbol).mapper, writer, enclosingDeclaration);
|
buildDisplayForTypeArgumentsAndDelimiters(params, (<TransientSymbol>symbol).mapper, writer, enclosingDeclaration);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
buildTypeParameterDisplayFromSymbol(parentSymbol, writer, enclosingDeclaration);
|
buildTypeParameterDisplayFromSymbol(parentSymbol, writer, enclosingDeclaration);
|
||||||
|
|
16
tests/cases/fourslash/quickInfoOnMethodOfImportEquals.ts
Normal file
16
tests/cases/fourslash/quickInfoOnMethodOfImportEquals.ts
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
/// <reference path="fourslash.ts" />
|
||||||
|
|
||||||
|
// Test for https://github.com/Microsoft/TypeScript/issues/15931
|
||||||
|
|
||||||
|
// @Filename: /a.d.ts
|
||||||
|
////declare class C<T> {
|
||||||
|
//// m(): void;
|
||||||
|
////}
|
||||||
|
////export = C;
|
||||||
|
|
||||||
|
// @Filename: /b.ts
|
||||||
|
////import C = require("./a");
|
||||||
|
////declare var x: C<number>;
|
||||||
|
////x./**/m;
|
||||||
|
|
||||||
|
verify.quickInfoAt("", "(method) C<number>.m(): void", undefined);
|
Loading…
Reference in a new issue