Skip to content

Give Navigate To the counts it sorts equal F# matches by - #20532

Draft
xperiandri wants to merge 6 commits into
dotnet:mainfrom
xperiandri:feature/navigate-to-sort-counts
Draft

xperiandri wants to merge 6 commits into
dotnet:mainfrom
xperiandri:feature/navigate-to-sort-counts

Conversation

@xperiandri

@xperiandri xperiandri commented Sep 13, 2026 •

Copy link
Copy Markdown
Contributor

Navigate To (Ctrl+T) listed F# matches of the same kind in no particular order, while C# and VB put matches from the current file and nearby folders first. dotnet/roslyn#85280 computes that ordering for F# too if F# supplies parameter and type parameter counts; this passes them.

Draft: cannot build until dotnet/roslyn#85280 has flowed. Stacked on #20531 (first two commits).

🤖 Generated with Claude Code

@github-actions

github-actions Bot commented Sep 13, 2026 •

Copy link
Copy Markdown
Contributor

✅ Release notes checked


✅ Found changes and release notes in following paths:

Warning

No PR link found in some release notes, please consider adding it.

Change path Release notes path Description
`src/Compiler` docs/release-notes/.FSharp.Compiler.Service/11.0.200.md No current pull request URL (#20532) found, please consider adding it
`vsintegration/src` docs/release-notes/.VisualStudio/18.vNext.md

@T-Gro T-Gro left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖🕵️ Please shorten the description using this guidance. Focus on the problem and why the change is needed, in simplified technical English. Leave the implementation inventory to the Files tab and retain necessary caveats.

@github-project-automation github-project-automation Bot moved this from New to In Progress in F# Compiler and Tooling Sep 15, 2026
@xperiandri
xperiandri force-pushed the feature/navigate-to-sort-counts branch 2 times, most recently from 3a8db63 to 27af195 Compare September 26, 2026 01:01
xperiandri and others added 6 commits October 2, 2026 17:21
Navigate To orders matches that are otherwise equal by these counts for C#
and VB. NavigableItem now carries them: every curried and tupled argument of
the method a declaration compiles to, without the instance and without a
solitary unit argument, and its explicitly declared type parameters.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Navigate To orders matches of the same kind by the folder distance to the
file being edited, then by parameter and type parameter count and name, for
C# and VB. Roslyn computes the same key for F# results once they carry the
counts, which NavigableItem now records.

Needs the FSharpNavigateToSearchResult constructor that takes the counts,
from dotnet/roslyn#85280.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Linking the note added a copy of it instead of editing the first, and `main` has since
opened 11.0.200 for SDK 11.0.200, leaving 11.0.100 shipped.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
dotnet/roslyn#85280 takes the counts in the same constructor as whether the
match kept the name's case and where in the name it landed, so the results
window can highlight F# names and rank a case-exact match first. The pattern
matcher reports the spans in the candidate it was given, container first, so
they move to the name's own offsets; the substring fallback for operators and
backticked names reports the span it found itself.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@xperiandri
xperiandri force-pushed the feature/navigate-to-sort-counts branch from 7afa54e to 4c712fc Compare October 2, 2026 16:03

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

2 participants