AddImport\CSharpAddImportFeatureService.cs (11)
39=> node.GetAncestor<UsingDirectiveSyntax>()?.Parent is CompilationUnitSyntax;
299var root = GetCompilationUnitSyntaxNode(contextNode, cancellationToken);
348var root = GetCompilationUnitSyntaxNode(contextNode, cancellationToken);
349var newRoot = await AddImportWorkerAsync(document, root, contextNode, namespaceOrTypeSymbol, options, cancellationToken).ConfigureAwait(false);
353private static async Task<CompilationUnitSyntax> AddImportWorkerAsync(
354Document document, CompilationUnitSyntax root, SyntaxNode contextNode, INamespaceOrTypeSymbol namespaceOrTypeSymbol,
386return (CompilationUnitSyntax)newRoot;
393var root = GetCompilationUnitSyntaxNode(contextNode, cancellationToken);
442CompilationUnitSyntax root,
601private static CompilationUnitSyntax GetCompilationUnitSyntaxNode(
604return (CompilationUnitSyntax)contextNode.SyntaxTree.GetRoot(cancellationToken);
src\Analyzers\CSharp\CodeFixes\MisplacedUsingDirectives\MisplacedUsingDirectivesCodeFixProvider.cs (29)
63var compilationUnit = (CompilationUnitSyntax)syntaxRoot;
91var compilationUnit = (CompilationUnitSyntax)await document.GetRequiredSyntaxRootAsync(cancellationToken).ConfigureAwait(false);
107private static ImmutableArray<UsingDirectiveSyntax> GetAllUsingDirectives(CompilationUnitSyntax compilationUnit)
137CompilationUnitSyntax compilationUnit,
146var compilationUnitWithExpandedUsings = await ExpandUsingDirectivesAsync(
152var newCompilationUnit = placement == AddImportPlacement.InsideNamespace
157var newCompilationUnitWithHeader = AddFileHeader(newCompilationUnit, fileHeader);
170private static async Task<CompilationUnitSyntax> ExpandUsingDirectivesAsync(
171Document document, CompilationUnitSyntax compilationUnit, ImmutableArray<UsingDirectiveSyntax> allUsingDirectives, CancellationToken cancellationToken)
193private static CompilationUnitSyntax MoveUsingsInsideNamespace(CompilationUnitSyntax compilationUnit)
201var compilationUnitWithoutUsings = compilationUnit.WithUsings([.. compilationUnit.Usings.Where(u => u.GlobalKeyword != default)]);
202var compilationUnitWithoutBlankLine = compilationUnitWithoutUsings.Usings.Count == 0
218private static CompilationUnitSyntax MoveUsingsOutsideNamespaces(
219CompilationUnitSyntax compilationUnit, bool ignoringAliases)
227var compilationUnitWithReplacedNamespaces = compilationUnit.ReplaceNodes(
238var compilationUnitWithUsings = compilationUnitWithReplacedNamespaces.WithUsings(newUsings);
241var compilationUnitWithSeparatorLine = EnsureLeadingBlankLineBeforeFirstMember(compilationUnitWithUsings);
323CompilationUnitSyntax compilationUnit => compilationUnit.Members,
384private static (AddImportPlacement placement, bool preferPreservation) DeterminePlacement(CompilationUnitSyntax compilationUnit, CodeStyleOption2<AddImportPlacement> styleOption)
410private static bool HasOneNamespace(CompilationUnitSyntax compilationUnit)
414.DescendantNodes(node => node is CompilationUnitSyntax or BaseNamespaceDeclarationSyntax)
421private static (CompilationUnitSyntax compilationUnitWithoutHeader, ImmutableArray<SyntaxTrivia> header) RemoveFileHeader(
422CompilationUnitSyntax syntaxRoot, IFileBannerFactsService bannerService)
432var newCompilationUnit = syntaxRoot.WithLeadingTrivia(leadingTrivia);
437private static CompilationUnitSyntax AddFileHeader(CompilationUnitSyntax compilationUnit, ImmutableArray<SyntaxTrivia> fileHeader)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationService.cs (16)
99CheckDeclarationNode<EnumDeclarationSyntax, TypeDeclarationSyntax, CompilationUnitSyntax>(destination);
111return Cast<TDeclarationNode>(FieldGenerator.AddFieldTo(Cast<CompilationUnitSyntax>(destination), field, info, availableIndices, cancellationToken));
123CheckDeclarationNode<TypeDeclarationSyntax, CompilationUnitSyntax, BaseNamespaceDeclarationSyntax>(destination);
178if (destination is CompilationUnitSyntax compilationUnit)
191CheckDeclarationNode<TypeDeclarationSyntax, CompilationUnitSyntax>(destination);
243Cast<CompilationUnitSyntax>(destination), property, info, availableIndices, cancellationToken));
249CheckDeclarationNode<TypeDeclarationSyntax, BaseNamespaceDeclarationSyntax, CompilationUnitSyntax>(destination);
263return Cast<TDeclarationNode>(NamedTypeGenerator.AddNamedTypeTo(this, Cast<CompilationUnitSyntax>(destination), namedType, csharpInfo, availableIndices, cancellationToken));
269CheckDeclarationNode<CompilationUnitSyntax, BaseNamespaceDeclarationSyntax>(destination);
271if (destination is CompilationUnitSyntax compilationUnit)
334CompilationUnitSyntax compilationUnit => Cast<TDeclarationNode>(compilationUnit.AddAttributeLists(attributeSyntaxList)),
343CheckDeclarationNode<EnumDeclarationSyntax, TypeDeclarationSyntax, BaseNamespaceDeclarationSyntax, CompilationUnitSyntax>(destination);
361return Cast<TDeclarationNode>(Cast<CompilationUnitSyntax>(destination)
414case CompilationUnitSyntax compilationUnit:
418var newCompilationUnit = compilationUnit.WithAttributeLists(newAttributeLists);
504else if (destinationMember is CompilationUnitSyntax compilationUnit && info.Context.BestLocation is null)