Unions: improve IDE handling
- Dominant language
- C#
- Stars
- 20.7k
- Forks
- 4.3k
- PR merge metrics
- PR metrics pending
Description
Tracks some follow-ups on https://github.com/dotnet/roslyn/pull/82604
Most of the suggestions were implemented in https://github.com/dotnet/roslyn/pull/82526 already (we can re-use those commits)
`// PROTOTYPE consider using a separate classification type for unions so users can color them differently`
`// PROTOTYPE consider having a separate NavigateToItemKind category for unions`
`PROTOTYPE Consider displaying unions as `union MyUnion` instead of `struct MyUnion` and with a separate classification type`
`PROTOTYPE Consider listing case types in QuickInfo tooltip for unions`
Note: this may require new compiler APIs, such as `IsUnion` to `INamedTypeSymbol`
Relates to test plan https://github.com/dotnet/roslyn/issues/81074
Contributor guide
Research direction
Start by reviewing the linked pull requests 82604 and 82526, then read the related test plan in issue 81074. Identify which prototype ideas remain for classification, NavigateTo, display text, and QuickInfo, and determine whether compiler API changes such as IsUnion are needed. Done means the selected IDE behaviors are implemented and covered by the relevant tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- compilers, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100