Handle computed property names
This commit is contained in:
parent
01bbc4de2e
commit
e41533acc7
|
@ -62,11 +62,16 @@ namespace ts.FindAllReferences {
|
||||||
node.parent.parent.left === node.parent ?
|
node.parent.parent.left === node.parent ?
|
||||||
node.parent.parent :
|
node.parent.parent :
|
||||||
undefined;
|
undefined;
|
||||||
return binaryExpression && getAssignmentDeclarationKind(binaryExpression) !== AssignmentDeclarationKind.None ?
|
if (binaryExpression && getAssignmentDeclarationKind(binaryExpression) !== AssignmentDeclarationKind.None) {
|
||||||
getDeclarationForDeclarationSpan(binaryExpression) :
|
return getDeclarationForDeclarationSpan(binaryExpression);
|
||||||
undefined;
|
}
|
||||||
}
|
}
|
||||||
return undefined;
|
|
||||||
|
// Handle computed property name
|
||||||
|
const propertyName = findAncestor(node, isComputedPropertyName);
|
||||||
|
return propertyName ?
|
||||||
|
getDeclarationForDeclarationSpan(propertyName.parent) :
|
||||||
|
undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isConstructorDeclaration(node.parent) ||
|
if (isConstructorDeclaration(node.parent) ||
|
||||||
|
|
|
@ -1,58 +1,58 @@
|
||||||
/// <reference path='fourslash.ts' />
|
/// <reference path='fourslash.ts' />
|
||||||
|
|
||||||
////interface I {
|
////interface I {
|
||||||
//// [|prop1|]: () => void;
|
//// [|[|{| "declarationRangeIndex": 0 |}prop1|]: () => void;|]
|
||||||
//// prop2(): void;
|
//// prop2(): void;
|
||||||
////}
|
////}
|
||||||
////
|
////
|
||||||
////var o1: I = {
|
////var o1: I = {
|
||||||
//// [|prop1|]() { },
|
//// [|[|{| "declarationRangeIndex": 2 |}prop1|]() { }|],
|
||||||
//// prop2() { }
|
//// prop2() { }
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o2: I = {
|
////var o2: I = {
|
||||||
//// [|prop1|]: () => { },
|
//// [|[|{| "declarationRangeIndex": 4 |}prop1|]: () => { }|],
|
||||||
//// prop2: () => { }
|
//// prop2: () => { }
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o3: I = {
|
////var o3: I = {
|
||||||
//// get [|prop1|]() { return () => { }; },
|
//// [|get [|{| "declarationRangeIndex": 6 |}prop1|]() { return () => { }; }|],
|
||||||
//// get prop2() { return () => { }; }
|
//// get prop2() { return () => { }; }
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o4: I = {
|
////var o4: I = {
|
||||||
//// set [|prop1|](v) { },
|
//// [|set [|{| "declarationRangeIndex": 8 |}prop1|](v) { }|],
|
||||||
//// set prop2(v) { }
|
//// set prop2(v) { }
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o5: I = {
|
////var o5: I = {
|
||||||
//// "[|prop1|]"() { },
|
//// [|"[|{| "declarationRangeIndex": 10 |}prop1|]"() { }|],
|
||||||
//// "prop2"() { }
|
//// "prop2"() { }
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o6: I = {
|
////var o6: I = {
|
||||||
//// "[|prop1|]": function () { },
|
//// [|"[|{| "declarationRangeIndex": 12 |}prop1|]": function () { }|],
|
||||||
//// "prop2": function () { }
|
//// "prop2": function () { }
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o7: I = {
|
////var o7: I = {
|
||||||
//// ["[|prop1|]"]: function () { },
|
//// [|["[|{| "declarationRangeIndex": 14 |}prop1|]"]: function () { }|],
|
||||||
//// ["prop2"]: function () { }
|
//// ["prop2"]: function () { }
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o8: I = {
|
////var o8: I = {
|
||||||
//// ["[|prop1|]"]() { },
|
//// [|["[|{| "declarationRangeIndex": 16 |}prop1|]"]() { }|],
|
||||||
//// ["prop2"]() { }
|
//// ["prop2"]() { }
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o9: I = {
|
////var o9: I = {
|
||||||
//// get ["[|prop1|]"]() { return () => { }; },
|
//// [|get ["[|{| "declarationRangeIndex": 18 |}prop1|]"]() { return () => { }; }|],
|
||||||
//// get ["prop2"]() { return () => { }; }
|
//// get ["prop2"]() { return () => { }; }
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o10: I = {
|
////var o10: I = {
|
||||||
//// set ["[|prop1|]"](v) { },
|
//// [|set ["[|{| "declarationRangeIndex": 20 |}prop1|]"](v) { }|],
|
||||||
//// set ["prop2"](v) { }
|
//// set ["prop2"](v) { }
|
||||||
////};
|
////};
|
||||||
|
|
||||||
verify.rangesAreRenameLocations();
|
verify.rangesAreRenameLocations(test.rangesByText().get("prop1"));
|
||||||
|
|
|
@ -2,57 +2,57 @@
|
||||||
|
|
||||||
////interface I {
|
////interface I {
|
||||||
//// prop1: () => void;
|
//// prop1: () => void;
|
||||||
//// [|prop2|](): void;
|
//// [|[|{| "declarationRangeIndex": 0 |}prop2|](): void;|]
|
||||||
////}
|
////}
|
||||||
////
|
////
|
||||||
////var o1: I = {
|
////var o1: I = {
|
||||||
//// prop1() { },
|
//// prop1() { },
|
||||||
//// [|prop2|]() { }
|
//// [|[|{| "declarationRangeIndex": 2 |}prop2|]() { }|]
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o2: I = {
|
////var o2: I = {
|
||||||
//// prop1: () => { },
|
//// prop1: () => { },
|
||||||
//// [|prop2|]: () => { }
|
//// [|[|{| "declarationRangeIndex": 4 |}prop2|]: () => { }|]
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o3: I = {
|
////var o3: I = {
|
||||||
//// get prop1() { return () => { }; },
|
//// get prop1() { return () => { }; },
|
||||||
//// get [|prop2|]() { return () => { }; }
|
//// [|get [|{| "declarationRangeIndex": 6 |}prop2|]() { return () => { }; }|]
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o4: I = {
|
////var o4: I = {
|
||||||
//// set prop1(v) { },
|
//// set prop1(v) { },
|
||||||
//// set [|prop2|](v) { }
|
//// [|set [|{| "declarationRangeIndex": 8 |}prop2|](v) { }|]
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o5: I = {
|
////var o5: I = {
|
||||||
//// "prop1"() { },
|
//// "prop1"() { },
|
||||||
//// "[|prop2|]"() { }
|
//// [|"[|{| "declarationRangeIndex": 10 |}prop2|]"() { }|]
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o6: I = {
|
////var o6: I = {
|
||||||
//// "prop1": function () { },
|
//// "prop1": function () { },
|
||||||
//// "[|prop2|]": function () { }
|
//// [|"[|{| "declarationRangeIndex": 12 |}prop2|]": function () { }|]
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o7: I = {
|
////var o7: I = {
|
||||||
//// ["prop1"]: function () { },
|
//// ["prop1"]: function () { },
|
||||||
//// ["[|prop2|]"]: function () { }
|
//// [|["[|{| "declarationRangeIndex": 14 |}prop2|]"]: function () { }|]
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o8: I = {
|
////var o8: I = {
|
||||||
//// ["prop1"]() { },
|
//// ["prop1"]() { },
|
||||||
//// ["[|prop2|]"]() { }
|
//// [|["[|{| "declarationRangeIndex": 16 |}prop2|]"]() { }|]
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o9: I = {
|
////var o9: I = {
|
||||||
//// get ["prop1"]() { return () => { }; },
|
//// get ["prop1"]() { return () => { }; },
|
||||||
//// get ["[|prop2|]"]() { return () => { }; }
|
//// [|get ["[|{| "declarationRangeIndex": 18 |}prop2|]"]() { return () => { }; }|]
|
||||||
////};
|
////};
|
||||||
////
|
////
|
||||||
////var o10: I = {
|
////var o10: I = {
|
||||||
//// set ["prop1"](v) { },
|
//// set ["prop1"](v) { },
|
||||||
//// set ["[|prop2|]"](v) { }
|
//// [|set ["[|{| "declarationRangeIndex": 20 |}prop2|]"](v) { }|]
|
||||||
////};
|
////};
|
||||||
|
|
||||||
verify.rangesAreRenameLocations();
|
verify.rangesAreRenameLocations(test.rangesByText().get("prop2"));
|
||||||
|
|
Loading…
Reference in a new issue