-
Notifications
You must be signed in to change notification settings - Fork 4.2k
Open
Labels
Area-CompilersConcept-APIThis issue involves adding, removing, clarification, or modification of an API.This issue involves adding, removing, clarification, or modification of an API.Feature Request
Milestone
Description
Background and Motivation
Codefixes can usually annotate a TypeSyntax with AddImportsAnnotation so that the using directive is added automatically if not present. However, when the codefix suggests using an extension method, AddImportsAnnotation alone cannot work.
Proposed API
namespace Microsoft.CodeAnalysis.Simplification
{
- internal class SymbolAnnotation
+ public class SymbolAnnotation
{
// Make everything internal except Create(ISymbol symbol) method
}
}Usage Examples
var annotation = SymbolAnnotation.Create(compilation.GetTypeByMetadataName("MyNamespace.Extensions"));
return document.WithSyntaxRoot(
root.ReplaceNode(nodetoReplace, extensionInvocation.WithAdditionalAnnotations(Simplifier.AddImportsAnnotation, annotation)));Alternative Designs
Risks
Metadata
Metadata
Assignees
Labels
Area-CompilersConcept-APIThis issue involves adding, removing, clarification, or modification of an API.This issue involves adding, removing, clarification, or modification of an API.Feature Request