Skip to content

Commit 3195e8e

Browse files
authored
fix(1342): adjust node ranges to ignore trivia (#1355)
1 parent 19c1578 commit 3195e8e

File tree

244 files changed

+2116
-2174
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

244 files changed

+2116
-2174
lines changed

internal/ls/findallreferences.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -419,7 +419,7 @@ func (l *LanguageService) convertSymbolAndEntryToLocation(s *SymbolAndEntries) [
419419
for _, ref := range s.references {
420420
if ref.textRange == nil {
421421
sourceFile := ast.GetSourceFileOfNode(ref.node)
422-
ref.textRange = l.createLspRangeFromNode(ref.node, ast.GetSourceFileOfNode(ref.node))
422+
ref.textRange = l.getRangeOfNode(ref.node, sourceFile, nil /*endNode*/)
423423
ref.fileName = sourceFile.FileName()
424424
}
425425
locations = append(locations, &lsproto.Location{

internal/ls/findallreferences_test.go

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,19 @@ class C extends [|/*3*/Base|] { }`,
241241
"3": collections.NewSetFromItems("2", "3"),
242242
},
243243
},
244+
{
245+
title: "findAllRefsTrivia",
246+
input: `export interface A {
247+
/** Comment */
248+
[|/*m1*/method|](): string;
249+
/** Comment */
250+
[|/*m2*/method|](format: string): string;
251+
}`,
252+
expectedLocations: map[string]*collections.Set[string]{
253+
"m1": collections.NewSetFromItems("m1", "m2"),
254+
"m2": collections.NewSetFromItems("m1", "m2"),
255+
},
256+
},
244257
}
245258

246259
for _, testCase := range testCases {

internal/ls/findallreferencesexport_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ func (l *LanguageService) GetExpectedReferenceFromMarker(fileName string, pos in
1313
node := astnav.GetTouchingPropertyName(sourceFile, pos)
1414
return &lsproto.Location{
1515
Uri: FileNameToDocumentURI(fileName),
16-
Range: *l.createLspRangeFromNode(node, sourceFile),
16+
Range: *l.getRangeOfNode(node, sourceFile, nil /*endNode*/),
1717
}
1818
}
1919

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
// === findAllReferences ===
22
// === /home/src/workspaces/project/a/index.d.ts ===
33

4-
// declare class[| A|] {
4+
// declare class [|A|] {
55
// }
66
// //# sourceMappingURL=index.d.ts.map
77

88

99
// === /home/src/workspaces/project/b/b.ts ===
1010

1111
// /// <reference path="../a/index.d.ts" />
12-
// new A/*FIND ALL REFS*/[| A|]();
12+
// new A/*FIND ALL REFS*/[|A|]();
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
// === findAllReferences ===
22
// === /constructorFindAllReferences3.ts ===
33

4-
// export class[| C|] {
4+
// export class [|C|] {
55
// /*FIND ALL REFS*/constructor() { }
66
// public foo() { }
77
// }
88
//
9-
// new[| C|]().foo();
9+
// new [|C|]().foo();

testdata/baselines/reference/fourslash/findAllRef/EsModuleInteropFindAllReferences.baseline.jsonc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
// === /abc.d.ts ===
88

99
// declare module "a" {
10-
// export const /*FIND ALL REFS*/[| x|]: number;
10+
// export const /*FIND ALL REFS*/[|x|]: number;
1111
// }
1212

1313

@@ -17,5 +17,5 @@
1717
// === /abc.d.ts ===
1818

1919
// declare module "a" {
20-
// export const[| x|]: number;
20+
// export const [|x|]: number;
2121
// }

testdata/baselines/reference/fourslash/findAllRef/EsModuleInteropFindAllReferences2.baseline.jsonc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
// === /a.d.ts ===
88

99
// export as namespace abc;
10-
// export const /*FIND ALL REFS*/[| x|]: number;
10+
// export const /*FIND ALL REFS*/[|x|]: number;
1111

1212

1313

@@ -16,7 +16,7 @@
1616
// === /a.d.ts ===
1717

1818
// export as namespace abc;
19-
// export const[| x|]: number;
19+
// export const [|x|]: number;
2020

2121

2222
// === /b.ts ===

testdata/baselines/reference/fourslash/findAllRef/FindAllReferencesFilteringMappedTypeProperty.baseline.jsonc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// === findAllReferences ===
22
// === /findAllReferencesFilteringMappedTypeProperty.ts ===
33

4-
// const obj = { /*FIND ALL REFS*/[| a|]: 1, b: 2 };
4+
// const obj = { /*FIND ALL REFS*/[|a|]: 1, b: 2 };
55
// const filtered: { [P in keyof typeof obj as P extends 'b' ? never : P]: 0; } = { a: 0 };
66
// filtered.[|a|];
77

@@ -12,7 +12,7 @@
1212
// === /findAllReferencesFilteringMappedTypeProperty.ts ===
1313

1414
// const obj = { a: 1, b: 2 };
15-
// const filtered: { [P in keyof typeof obj as P extends 'b' ? never : P]: 0; } = { /*FIND ALL REFS*/[| a|]: 0 };
15+
// const filtered: { [P in keyof typeof obj as P extends 'b' ? never : P]: 0; } = { /*FIND ALL REFS*/[|a|]: 0 };
1616
// filtered.a;
1717

1818

@@ -21,6 +21,6 @@
2121
// === findAllReferences ===
2222
// === /findAllReferencesFilteringMappedTypeProperty.ts ===
2323

24-
// const obj = {[| a|]: 1, b: 2 };
24+
// const obj = { [|a|]: 1, b: 2 };
2525
// const filtered: { [P in keyof typeof obj as P extends 'b' ? never : P]: 0; } = { a: 0 };
2626
// filtered./*FIND ALL REFS*/[|a|];
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// === findAllReferences ===
22
// === /findAllReferencesFromLinkTagReference1.ts ===
33

4-
// enum E {[|
4+
// enum E {
55
// /** {@link /*FIND ALL REFS*/[|A|]} */
6-
// A|]
6+
// [|A|]
77
// }

testdata/baselines/reference/fourslash/findAllRef/FindAllReferencesFromLinkTagReference2.baseline.jsonc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
// === findAllReferences ===
22
// === /a.ts ===
33

4-
// enum E {[|
4+
// enum E {
55
// /** {@link /*FIND ALL REFS*/[|Foo|]} */
6-
// Foo|]
6+
// [|Foo|]
77
// }
88
// interface Foo {
99
// foo: E.[|Foo|];

0 commit comments

Comments
 (0)