mirror of
https://github.com/microsoft/TypeScript.git
synced 2026-02-06 20:14:01 -06:00
Better symbol information for lambda variable types at the call site
This commit is contained in:
parent
be051f02b5
commit
643d169465
@ -2727,38 +2727,37 @@ module ts {
|
||||
var allSignatures = useConstructSignatures ? type.getConstructSignatures() : type.getCallSignatures();
|
||||
|
||||
if (contains(allSignatures, signature.target || signature)) {
|
||||
// Write it as method/function/constructor as: (constructor) a(....)
|
||||
if (symbolKind === ScriptElementKind.memberVariableElement || symbolFlags & SymbolFlags.Variable || symbolFlags & SymbolFlags.Class) {
|
||||
if (useConstructSignatures) {
|
||||
symbolKind = ScriptElementKind.constructorImplementationElement;
|
||||
}
|
||||
else {
|
||||
switch (symbolKind) {
|
||||
case ScriptElementKind.memberVariableElement:
|
||||
symbolKind = ScriptElementKind.memberFunctionElement;
|
||||
break;
|
||||
case ScriptElementKind.variableElement:
|
||||
symbolKind = ScriptElementKind.functionElement;
|
||||
break;
|
||||
case ScriptElementKind.parameterElement:
|
||||
case ScriptElementKind.localVariableElement:
|
||||
symbolKind = ScriptElementKind.localFunctionElement;
|
||||
break;
|
||||
default:
|
||||
Debug.fail("symbolKind: " + symbolKind);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Constructor or call signatures use the type name
|
||||
if (useConstructSignatures || (signature.declaration.kind === SyntaxKind.CallSignature &&
|
||||
!(type.symbol.flags & SymbolFlags.TypeLiteral || type.symbol.flags & SymbolFlags.ObjectLiteral))) {
|
||||
if (useConstructSignatures && (symbolFlags & SymbolFlags.Class)) {
|
||||
// Constructor
|
||||
symbolKind = ScriptElementKind.constructorImplementationElement;
|
||||
addPrefixForAnyFunctionOrVar(type.symbol, symbolKind);
|
||||
}
|
||||
else {
|
||||
addPrefixForAnyFunctionOrVar(symbol, symbolKind);
|
||||
}
|
||||
addSignatureDisplayParts(signature, allSignatures);
|
||||
|
||||
switch (symbolKind) {
|
||||
case ScriptElementKind.memberVariableElement:
|
||||
case ScriptElementKind.variableElement:
|
||||
case ScriptElementKind.parameterElement:
|
||||
case ScriptElementKind.localVariableElement:
|
||||
// If it is call or construct signature of lambda's write type name
|
||||
displayParts.push(punctuationPart(SyntaxKind.ColonToken));
|
||||
displayParts.push(spacePart());
|
||||
if (useConstructSignatures) {
|
||||
displayParts.push(keywordPart(SyntaxKind.NewKeyword));
|
||||
displayParts.push(spacePart());
|
||||
}
|
||||
if (!(type.flags & TypeFlags.Anonymous)) {
|
||||
displayParts.push.apply(displayParts, symbolToDisplayParts(typeResolver, type.symbol, enclosingDeclaration, /*meaning*/ undefined, SymbolFormatFlags.WriteTypeParametersOrArguments));
|
||||
}
|
||||
addSignatureDisplayParts(signature, allSignatures, TypeFormatFlags.WriteArrowStyleSignature);
|
||||
break;
|
||||
|
||||
default:
|
||||
// Just signature
|
||||
addSignatureDisplayParts(signature, allSignatures);
|
||||
}
|
||||
hasAddedSymbolInfo = true;
|
||||
}
|
||||
}
|
||||
@ -2917,8 +2916,8 @@ module ts {
|
||||
}
|
||||
}
|
||||
|
||||
function addSignatureDisplayParts(signature: Signature, allSignatures: Signature[]) {
|
||||
displayParts.push.apply(displayParts, signatureToDisplayParts(typeResolver, signature, enclosingDeclaration, TypeFormatFlags.NoTruncation | TypeFormatFlags.WriteTypeArgumentsOfSignature));
|
||||
function addSignatureDisplayParts(signature: Signature, allSignatures: Signature[], flags?: TypeFormatFlags) {
|
||||
displayParts.push.apply(displayParts, signatureToDisplayParts(typeResolver, signature, enclosingDeclaration, flags | TypeFormatFlags.NoTruncation | TypeFormatFlags.WriteTypeArgumentsOfSignature));
|
||||
if (allSignatures.length > 1) {
|
||||
displayParts.push(spacePart());
|
||||
displayParts.push(punctuationPart(SyntaxKind.OpenParenToken));
|
||||
|
||||
@ -126,6 +126,7 @@ verify.quickInfoIs('(local var) localVar: string', '');
|
||||
goTo.marker('30');
|
||||
verify.quickInfoIs('(parameter) b: string', '');
|
||||
goTo.marker('31');
|
||||
verify.quickInfoIs('(local function) lambdaVar(b: string): string', '');
|
||||
debugger;
|
||||
verify.quickInfoIs('(local var) lambdaVar: (b: string) => string', '');
|
||||
goTo.marker('32');
|
||||
verify.quickInfoIs('(parameter) a: number', '');
|
||||
|
||||
@ -261,13 +261,13 @@ verify.quickInfoIs("(method) i1.f1(): void", "");
|
||||
goTo.marker('5q');
|
||||
verify.quickInfoIs("(method) i1.nc_f1(): void", "");
|
||||
goTo.marker('l2q');
|
||||
verify.quickInfoIs("(method) i1.i1_l1(): void", "");
|
||||
verify.quickInfoIs("(property) i1.i1_l1: () => void", "");
|
||||
goTo.marker('l3q');
|
||||
verify.quickInfoIs("(method) i1.i1_nc_l1(): void", "");
|
||||
verify.quickInfoIs("(property) i1.i1_nc_l1: () => void", "");
|
||||
goTo.marker('l4q');
|
||||
verify.quickInfoIs("(method) i1.l1(): void", "");
|
||||
verify.quickInfoIs("(property) i1.l1: () => void", "");
|
||||
goTo.marker('l5q');
|
||||
verify.quickInfoIs("(method) i1.nc_l1(): void", "");
|
||||
verify.quickInfoIs("(property) i1.nc_l1: () => void", "");
|
||||
|
||||
goTo.marker('6');
|
||||
verify.memberListContains("i1_p1", "(property) c1.i1_p1: number", "");
|
||||
@ -310,13 +310,13 @@ verify.quickInfoIs("(method) c1.f1(): void", "c1_f1");
|
||||
goTo.marker('10q');
|
||||
verify.quickInfoIs("(method) c1.nc_f1(): void", "c1_nc_f1");
|
||||
goTo.marker('l7q');
|
||||
verify.quickInfoIs("(method) c1.i1_l1(): void", "");
|
||||
verify.quickInfoIs("(property) c1.i1_l1: () => void", "");
|
||||
goTo.marker('l8q');
|
||||
verify.quickInfoIs("(method) c1.i1_nc_l1(): void", "");
|
||||
verify.quickInfoIs("(property) c1.i1_nc_l1: () => void", "");
|
||||
goTo.marker('l9q');
|
||||
verify.quickInfoIs("(method) c1.l1(): void", "");
|
||||
verify.quickInfoIs("(property) c1.l1: () => void", "");
|
||||
goTo.marker('l10q');
|
||||
verify.quickInfoIs("(method) c1.nc_l1(): void", "");
|
||||
verify.quickInfoIs("(property) c1.nc_l1: () => void", "");
|
||||
|
||||
goTo.marker('11');
|
||||
verify.memberListContains("i1_p1", "(property) i1.i1_p1: number", "i1_p1");
|
||||
@ -356,13 +356,13 @@ verify.quickInfoIs("(method) i1.f1(): void", "");
|
||||
goTo.marker('15q');
|
||||
verify.quickInfoIs("(method) i1.nc_f1(): void", "");
|
||||
goTo.marker('l12q');
|
||||
verify.quickInfoIs("(method) i1.i1_l1(): void", "");
|
||||
verify.quickInfoIs("(property) i1.i1_l1: () => void", "");
|
||||
goTo.marker('l13q');
|
||||
verify.quickInfoIs("(method) i1.i1_nc_l1(): void", "");
|
||||
verify.quickInfoIs("(property) i1.i1_nc_l1: () => void", "");
|
||||
goTo.marker('l14q');
|
||||
verify.quickInfoIs("(method) i1.l1(): void", "");
|
||||
verify.quickInfoIs("(property) i1.l1: () => void", "");
|
||||
goTo.marker('l15q');
|
||||
verify.quickInfoIs("(method) i1.nc_l1(): void", "");
|
||||
verify.quickInfoIs("(property) i1.nc_l1: () => void", "");
|
||||
|
||||
goTo.marker('16');
|
||||
verify.completionListContains("i1", "interface i1", "i1 is interface with properties");
|
||||
@ -545,13 +545,13 @@ verify.quickInfoIs("(method) i2.f1(): void", "i2 f1");
|
||||
goTo.marker('40q');
|
||||
verify.quickInfoIs("(method) i2.nc_f1(): void", "");
|
||||
goTo.marker('l37q');
|
||||
verify.quickInfoIs("(method) i2.i2_l1(): void", "");
|
||||
verify.quickInfoIs("(property) i2.i2_l1: () => void", "");
|
||||
goTo.marker('l38q');
|
||||
verify.quickInfoIs("(method) i2.i2_nc_l1(): void", "");
|
||||
verify.quickInfoIs("(property) i2.i2_nc_l1: () => void", "");
|
||||
goTo.marker('l39q');
|
||||
verify.quickInfoIs("(method) i2.l1(): void", "");
|
||||
verify.quickInfoIs("(property) i2.l1: () => void", "");
|
||||
goTo.marker('l40q');
|
||||
verify.quickInfoIs("(method) i2.nc_l1(): void", "");
|
||||
verify.quickInfoIs("(property) i2.nc_l1: () => void", "");
|
||||
|
||||
goTo.marker('41');
|
||||
verify.memberListContains("i2_p1", "(property) i2.i2_p1: number", "i2_p1");
|
||||
@ -592,13 +592,13 @@ verify.quickInfoIs("(method) i3.f1(): void", "i3 f1");
|
||||
goTo.marker('45q');
|
||||
verify.quickInfoIs("(method) i3.nc_f1(): void", "");
|
||||
goTo.marker('l42q');
|
||||
verify.quickInfoIs("(method) i2.i2_l1(): void", "");
|
||||
verify.quickInfoIs("(property) i2.i2_l1: () => void", "");
|
||||
goTo.marker('l43q');
|
||||
verify.quickInfoIs("(method) i2.i2_nc_l1(): void", "");
|
||||
verify.quickInfoIs("(property) i2.i2_nc_l1: () => void", "");
|
||||
goTo.marker('l44q');
|
||||
verify.quickInfoIs("(method) i3.l1(): void", "");
|
||||
verify.quickInfoIs("(property) i3.l1: () => void", "");
|
||||
goTo.marker('l45q');
|
||||
verify.quickInfoIs("(method) i3.nc_l1(): void", "");
|
||||
verify.quickInfoIs("(property) i3.nc_l1: () => void", "");
|
||||
|
||||
goTo.marker('46');
|
||||
verify.memberListContains("i2_p1", "(property) i2.i2_p1: number", "i2_p1");
|
||||
@ -639,13 +639,13 @@ verify.quickInfoIs("(method) i2.f1(): void", "i2 f1");
|
||||
goTo.marker('50q');
|
||||
verify.quickInfoIs("(method) i2.nc_f1(): void", "");
|
||||
goTo.marker('l47q');
|
||||
verify.quickInfoIs("(method) i2.i2_l1(): void", "");
|
||||
verify.quickInfoIs("(property) i2.i2_l1: () => void", "");
|
||||
goTo.marker('l48q');
|
||||
verify.quickInfoIs("(method) i2.i2_nc_l1(): void", "");
|
||||
verify.quickInfoIs("(property) i2.i2_nc_l1: () => void", "");
|
||||
goTo.marker('l49q');
|
||||
verify.quickInfoIs("(method) i2.l1(): void", "");
|
||||
verify.quickInfoIs("(property) i2.l1: () => void", "");
|
||||
goTo.marker('l50q');
|
||||
verify.quickInfoIs("(method) i2.nc_l1(): void", "");
|
||||
verify.quickInfoIs("(property) i2.nc_l1: () => void", "");
|
||||
|
||||
goTo.marker('51');
|
||||
verify.completionListContains("i2", "interface i2", "");
|
||||
|
||||
@ -111,7 +111,7 @@ goTo.marker('12');
|
||||
verify.currentSignatureHelpDocCommentIs("");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("param help");
|
||||
goTo.marker('12q');
|
||||
verify.quickInfoIs("(method) i2.foo(b: number): string", "");
|
||||
verify.quickInfoIs("(property) i2.foo: (b: number) => string", "");
|
||||
|
||||
goTo.marker('13');
|
||||
verify.quickInfoIs("(var) i2_i_i2_si: number", "");
|
||||
@ -130,7 +130,7 @@ goTo.marker('16');
|
||||
verify.currentSignatureHelpDocCommentIs("new method");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("param");
|
||||
goTo.marker('16q');
|
||||
verify.quickInfoIs("(constructor) i2(i: i1): any", "new method");
|
||||
verify.quickInfoIs("(var) i2_i: new i2(i: i1) => any", "new method");
|
||||
|
||||
goTo.marker('17');
|
||||
verify.quickInfoIs("(var) i2_i_nc_x: number", "");
|
||||
@ -151,7 +151,7 @@ goTo.marker('22');
|
||||
verify.currentSignatureHelpDocCommentIs("");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("");
|
||||
goTo.marker('22q');
|
||||
verify.quickInfoIs("(method) i2.nc_foo(b: number): string", "");
|
||||
verify.quickInfoIs("(property) i2.nc_foo: (b: number) => string", "");
|
||||
|
||||
goTo.marker('23');
|
||||
verify.quickInfoIs("(var) i2_i_r: number", "");
|
||||
@ -160,7 +160,7 @@ goTo.marker('24');
|
||||
verify.currentSignatureHelpDocCommentIs("this is call signature");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("paramhelp a");
|
||||
goTo.marker('24q');
|
||||
verify.quickInfoIs("(function) i2(a: number, b: number): number", "this is call signature");
|
||||
verify.quickInfoIs("(var) i2_i: i2(a: number, b: number) => number", "this is call signature");
|
||||
|
||||
goTo.marker('25');
|
||||
verify.currentSignatureHelpDocCommentIs("this is call signature");
|
||||
@ -244,7 +244,7 @@ goTo.marker('43');
|
||||
verify.currentSignatureHelpDocCommentIs("");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("comment i3 l b");
|
||||
goTo.marker('43q');
|
||||
verify.quickInfoIs("(method) i3.l(b: number): string", "");
|
||||
verify.quickInfoIs("(property) i3.l: (b: number) => string", "");
|
||||
|
||||
goTo.marker('44');
|
||||
verify.currentSignatureHelpDocCommentIs("");
|
||||
@ -256,4 +256,4 @@ goTo.marker('45');
|
||||
verify.currentSignatureHelpDocCommentIs("");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("");
|
||||
goTo.marker('45q');
|
||||
verify.quickInfoIs("(method) i3.nc_l(b: number): string", "");
|
||||
verify.quickInfoIs("(property) i3.nc_l: (b: number) => string", "");
|
||||
|
||||
@ -308,7 +308,7 @@ verify.completionListContains('f4', '(function) f4(a: number): number (+ 1 overl
|
||||
|
||||
goTo.marker('18');
|
||||
verify.completionListContains('i1', 'interface i1', '');
|
||||
verify.completionListContains('i1_i', '(constructor) i1(b: number): any (+ 1 overload(s))', '');
|
||||
verify.completionListContains('i1_i', '(var) i1_i: new i1(b: number) => any (+ 1 overload(s))', '');
|
||||
verify.completionListContains('i2', 'interface i2', '');
|
||||
verify.completionListContains('i2_i', '(var) i2_i: i2', '');
|
||||
verify.completionListContains('i3', 'interface i3', '');
|
||||
@ -320,25 +320,25 @@ goTo.marker('19');
|
||||
verify.currentSignatureHelpDocCommentIs("");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("");
|
||||
goTo.marker('19q');
|
||||
verify.quickInfoIs("(constructor) i1(b: number): any (+ 1 overload(s))", "");
|
||||
verify.quickInfoIs("(var) i1_i: new i1(b: number) => any (+ 1 overload(s))", "");
|
||||
|
||||
goTo.marker('20');
|
||||
verify.currentSignatureHelpDocCommentIs("new 1");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("");
|
||||
goTo.marker('20q');
|
||||
verify.quickInfoIs("(constructor) i1(a: string): any (+ 1 overload(s))", "new 1");
|
||||
verify.quickInfoIs("(var) i1_i: new i1(a: string) => any (+ 1 overload(s))", "new 1");
|
||||
|
||||
goTo.marker('21');
|
||||
verify.currentSignatureHelpDocCommentIs("this signature 1");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("param a");
|
||||
goTo.marker('21q');
|
||||
verify.quickInfoIs("(function) i1(a: number): number (+ 1 overload(s))", "this signature 1");
|
||||
verify.quickInfoIs("(var) i1_i: i1(a: number) => number (+ 1 overload(s))", "this signature 1");
|
||||
|
||||
goTo.marker('22');
|
||||
verify.currentSignatureHelpDocCommentIs("this is signature 2");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("");
|
||||
goTo.marker('22q');
|
||||
verify.quickInfoIs("(function) i1(b: string): number (+ 1 overload(s))", "this is signature 2");
|
||||
verify.quickInfoIs("(var) i1_i: i1(b: string) => number (+ 1 overload(s))", "this is signature 2");
|
||||
|
||||
goTo.marker('23');
|
||||
verify.memberListContains('foo', '(method) i1.foo(a: number): number (+ 1 overload(s))', 'foo 1');
|
||||
@ -398,73 +398,73 @@ goTo.marker('32');
|
||||
verify.currentSignatureHelpDocCommentIs("new 2");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("");
|
||||
goTo.marker('32q');
|
||||
verify.quickInfoIs("(constructor) i2(b: number): any (+ 1 overload(s))", "new 2");
|
||||
verify.quickInfoIs("(var) i2_i: new i2(b: number) => any (+ 1 overload(s))", "new 2");
|
||||
|
||||
goTo.marker('33');
|
||||
verify.currentSignatureHelpDocCommentIs("");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("");
|
||||
goTo.marker('33q');
|
||||
verify.quickInfoIs("(constructor) i2(a: string): any (+ 1 overload(s))", "");
|
||||
verify.quickInfoIs("(var) i2_i: new i2(a: string) => any (+ 1 overload(s))", "");
|
||||
|
||||
goTo.marker('34');
|
||||
verify.currentSignatureHelpDocCommentIs("");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("");
|
||||
goTo.marker('34q');
|
||||
verify.quickInfoIs("(function) i2(a: number): number (+ 1 overload(s))", "");
|
||||
verify.quickInfoIs("(var) i2_i: i2(a: number) => number (+ 1 overload(s))", "");
|
||||
|
||||
goTo.marker('35');
|
||||
verify.currentSignatureHelpDocCommentIs("this is signature 2");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("");
|
||||
goTo.marker('35q');
|
||||
verify.quickInfoIs("(function) i2(b: string): number (+ 1 overload(s))", "this is signature 2");
|
||||
verify.quickInfoIs("(var) i2_i: i2(b: string) => number (+ 1 overload(s))", "this is signature 2");
|
||||
|
||||
goTo.marker('36');
|
||||
verify.currentSignatureHelpDocCommentIs("new 2");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("");
|
||||
goTo.marker('36q');
|
||||
verify.quickInfoIs("(constructor) i3(b: number): any (+ 1 overload(s))", "new 2");
|
||||
verify.quickInfoIs("(var) i3_i: new i3(b: number) => any (+ 1 overload(s))", "new 2");
|
||||
|
||||
goTo.marker('37');
|
||||
verify.currentSignatureHelpDocCommentIs("new 1");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("");
|
||||
goTo.marker('37q');
|
||||
verify.quickInfoIs("(constructor) i3(a: string): any (+ 1 overload(s))", "new 1");
|
||||
verify.quickInfoIs("(var) i3_i: new i3(a: string) => any (+ 1 overload(s))", "new 1");
|
||||
|
||||
goTo.marker('38');
|
||||
verify.currentSignatureHelpDocCommentIs("this is signature 1");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("");
|
||||
goTo.marker('38q');
|
||||
verify.quickInfoIs("(function) i3(a: number): number (+ 1 overload(s))", "this is signature 1");
|
||||
verify.quickInfoIs("(var) i3_i: i3(a: number) => number (+ 1 overload(s))", "this is signature 1");
|
||||
|
||||
goTo.marker('39');
|
||||
verify.currentSignatureHelpDocCommentIs("");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("");
|
||||
goTo.marker('39q');
|
||||
verify.quickInfoIs("(function) i3(b: string): number (+ 1 overload(s))", "");
|
||||
verify.quickInfoIs("(var) i3_i: i3(b: string) => number (+ 1 overload(s))", "");
|
||||
|
||||
goTo.marker('40');
|
||||
verify.currentSignatureHelpDocCommentIs("");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("");
|
||||
goTo.marker('40q');
|
||||
verify.quickInfoIs("(constructor) i4(b: number): any (+ 1 overload(s))", "");
|
||||
verify.quickInfoIs("(var) i4_i: new i4(b: number) => any (+ 1 overload(s))", "");
|
||||
|
||||
goTo.marker('41');
|
||||
verify.currentSignatureHelpDocCommentIs("");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("");
|
||||
goTo.marker('41q');
|
||||
verify.quickInfoIs("(constructor) i4(a: string): any (+ 1 overload(s))", "");
|
||||
verify.quickInfoIs("(var) i4_i: new i4(a: string) => any (+ 1 overload(s))", "");
|
||||
|
||||
goTo.marker('42');
|
||||
verify.currentSignatureHelpDocCommentIs("");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("");
|
||||
goTo.marker('42q');
|
||||
verify.quickInfoIs("(function) i4(a: number): number (+ 1 overload(s))", "");
|
||||
verify.quickInfoIs("(var) i4_i: i4(a: number) => number (+ 1 overload(s))", "");
|
||||
|
||||
goTo.marker('43');
|
||||
verify.currentSignatureHelpDocCommentIs("");
|
||||
verify.currentParameterHelpArgumentDocCommentIs("");
|
||||
goTo.marker('43q');
|
||||
verify.quickInfoIs("(function) i4(b: string): number (+ 1 overload(s))", "");
|
||||
verify.quickInfoIs("(var) i4_i: i4(b: string) => number (+ 1 overload(s))", "");
|
||||
|
||||
goTo.marker('44');
|
||||
verify.memberListContains('prop1', '(method) c.prop1(a: number): number (+ 1 overload(s))', '');
|
||||
|
||||
@ -63,7 +63,7 @@ verify.quickInfoIs("(function) foo(): void", "foos comment");
|
||||
goTo.marker('6');
|
||||
verify.currentSignatureHelpDocCommentIs("");
|
||||
goTo.marker('6q');
|
||||
verify.quickInfoIs("(function) fooVar(): void", "");
|
||||
verify.quickInfoIs("(var) fooVar: () => void", "");
|
||||
|
||||
goTo.marker('7');
|
||||
verify.completionListContains("foo", "(function) foo(): void", "foos comment");
|
||||
@ -77,7 +77,7 @@ verify.quickInfoIs("(function) foo(): void", "foos comment");
|
||||
goTo.marker('9');
|
||||
verify.currentSignatureHelpDocCommentIs("");
|
||||
goTo.marker('9q');
|
||||
verify.quickInfoIs("(function) fooVar(): void", "");
|
||||
verify.quickInfoIs("(var) fooVar: () => void", "");
|
||||
goTo.marker('9aq');
|
||||
verify.quickInfoIs("(var) fooVar: () => void", "fooVar comment");
|
||||
|
||||
|
||||
@ -30,7 +30,7 @@ verify.quickInfoIs("(method) C.x1(a: number, callback: (x: 'hi') => number): any
|
||||
goTo.marker('5');
|
||||
verify.quickInfoIs('(parameter) callback: (x: string) => number');
|
||||
goTo.marker('6');
|
||||
verify.quickInfoIs('(local function) callback(x: string): number');
|
||||
verify.quickInfoIs('(parameter) callback: (x: string) => number');
|
||||
goTo.marker('7');
|
||||
verify.quickInfoIs("(method) C.x1(a: number, callback: (x: 'hi') => number): any");
|
||||
goTo.marker('8');
|
||||
|
||||
@ -6,12 +6,7 @@
|
||||
//// /*3*/f(3);
|
||||
////}
|
||||
|
||||
// Declaration is shown as type information
|
||||
goTo.marker("1");
|
||||
verify.quickInfoIs("(var) f: (x: number) => number", "");
|
||||
|
||||
// But the call sites show the signatures selected
|
||||
[2, 3].forEach((val) => {
|
||||
[1, 2, 3].forEach((val) => {
|
||||
goTo.marker("" + val);
|
||||
verify.quickInfoIs("(function) f(x: number): number", "");
|
||||
verify.quickInfoIs("(var) f: (x: number) => number", "");
|
||||
} );
|
||||
Loading…
x
Reference in New Issue
Block a user