1 instantiation of ReferenceInfo
Microsoft.CodeAnalysis.Features (1)
UnusedReferences\ReferenceInfo.cs (1)
48=> new(ReferenceType, itemSpecification, TreatAsUsed, CompilationAssemblies, Dependencies);
41 references to ReferenceInfo
Microsoft.CodeAnalysis.Features (41)
UnusedReferences\IReferenceCleanupService.cs (1)
18Task<ImmutableArray<ReferenceInfo>> GetProjectReferencesAsync(
UnusedReferences\IUnusedReferenceAnalysisService.cs (4)
14Task<ImmutableArray<ReferenceInfo>> GetUnusedReferencesAsync( 18ImmutableArray<ReferenceInfo> projectReferences, 24ValueTask<ImmutableArray<ReferenceInfo>> GetUnusedReferencesAsync( 28ImmutableArray<ReferenceInfo> projectReferences,
UnusedReferences\ProjectAssets\ProjectAssetsReader.cs (11)
24public static ImmutableArray<ReferenceInfo> AddDependencyHierarchies( 25ImmutableArray<ReferenceInfo> projectReferences, 60var builtReferences = new Dictionary<string, ReferenceInfo?>(); 70private static ReferenceInfo? EnhanceReference( 72ReferenceInfo referenceInfo, 75Dictionary<string, ReferenceInfo?> builtReferences) 86var reference = BuildReference(projectAssets, referenceName, referenceInfo.TreatAsUsed, targetLibraryKeys, builtReferences); 95private static ReferenceInfo? BuildReference( 100Dictionary<string, ReferenceInfo?> builtReferences) 169if (builtReferences.TryGetValue(itemSpecification, out var builtReference)) 179var reference = new ReferenceInfo(referenceType, itemSpecification, treatAsUsed, compilationAssemblies.ToImmutable(), dependencies);
UnusedReferences\ReferenceInfo.cs (5)
12internal sealed class ReferenceInfo(ReferenceType referenceType, string itemSpecification, bool treatAsUsed, ImmutableArray<string> compilationAssemblies, ImmutableArray<ReferenceInfo> dependencies) 45public ImmutableArray<ReferenceInfo> Dependencies { get; } = dependencies; 47public ReferenceInfo WithItemSpecification(string itemSpecification) 50public ReferenceInfo WithDependencies(IEnumerable<ReferenceInfo>? dependencies)
UnusedReferences\ReferenceUpdate.cs (2)
7internal sealed class ReferenceUpdate(UpdateAction action, ReferenceInfo referenceInfo) 17public ReferenceInfo ReferenceInfo { get; } = referenceInfo;
UnusedReferences\UnusedReferencesRemover.cs (18)
25public static async Task<ImmutableArray<ReferenceInfo>> GetUnusedReferencesAsync( 28ImmutableArray<ReferenceInfo> references, 64internal static ImmutableArray<ReferenceInfo> GetUnusedReferences( 67ImmutableArray<ReferenceInfo> references) 69var unusedReferencesBuilder = ImmutableArray.CreateBuilder<ReferenceInfo>(); 128private static ImmutableArray<ReferenceInfo> RemoveDirectlyUsedReferences( 129ImmutableArray<ReferenceInfo> references, 139var unusedReferencesBuilder = ImmutableArray.CreateBuilder<ReferenceInfo>(); 141foreach (var reference in references) 184private static ImmutableArray<ReferenceInfo> RemoveTransitivelyUsedReferences( 185ImmutableArray<ReferenceInfo> references, 198var unusedReferencesBuilder = ImmutableArray.CreateBuilder<ReferenceInfo>(); 200foreach (var reference in references) 226internal static bool HasAnyCompilationAssembly(ReferenceInfo reference) 236internal static bool ContainsAnyCompilationAssembly(ReferenceInfo reference, HashSet<string> usedAssemblyFilePaths) 246internal static void RemoveAllCompilationAssemblies(ReferenceInfo reference, HashSet<string> usedAssemblyFilePaths) 250foreach (var dependency in reference.Dependencies) 256internal static ImmutableArray<string> GetAllCompilationAssemblies(ReferenceInfo reference)