Skip to content

Commit 5db4ad7

Browse files
committed
De-dup simplified results
1 parent 4edfb2a commit 5db4ad7

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

src/server/session.ts

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1649,8 +1649,14 @@ namespace ts.server {
16491649
const nameSpan = nameInfo && nameInfo.textSpan;
16501650
const symbolStartOffset = nameSpan ? scriptInfo.positionToLineOffset(nameSpan.start).offset : 0;
16511651
const symbolName = nameSpan ? scriptInfo.getSnapshot().getText(nameSpan.start, textSpanEnd(nameSpan)) : "";
1652-
const refs: readonly protocol.ReferencesResponseItem[] = flatMap(references, referencedSymbol => {
1653-
return referencedSymbol.references.map(entry => referenceEntryToReferencesResponseItem(this.projectService, entry)); // TODO (acasey): de-dup
1652+
const refs: protocol.ReferencesResponseItem[] = [];
1653+
const seen = createDocumentSpanSet();
1654+
references.forEach(referencedSymbol => {
1655+
referencedSymbol.references.forEach(entry => {
1656+
if (tryAddToSet(seen, entry)) {
1657+
refs.push(referenceEntryToReferencesResponseItem(this.projectService, entry));
1658+
}
1659+
});
16541660
});
16551661
return { refs, symbolName, symbolStartOffset, symbolDisplayString };
16561662
}

0 commit comments

Comments
 (0)