Beispiel #1
0
        private void UpdateDiagnosticAnalyzerToPackageNameMap(
            ImmutableDictionary <string, string> nameMap,
            AnalyzerReference reference,
            ImmutableArray <DiagnosticAnalyzer> analyzers)
        {
            var fileReference = reference as AnalyzerFileReference;

            if (fileReference == null)
            {
                return;
            }

            if (!nameMap.TryGetValue(fileReference.FullPath, out var name))
            {
                return;
            }

            foreach (var analyzer in analyzers)
            {
                ImmutableInterlocked.GetOrAdd(ref _hostDiagnosticAnalyzerPackageNameMap, analyzer, name);
            }
        }
Beispiel #2
0
 private static string GetDisplayName(AnalyzerReference reference)
 {
     return(reference.Display ?? FeaturesResources.Unknown);
 }
Beispiel #3
0
 /// <summary>
 /// It returns a string that can be used as a way to de-duplicate <see cref="AnalyzerReference"/>s.
 /// </summary>
 public object GetAnalyzerReferenceIdentity(AnalyzerReference reference)
 {
     return(reference.Id);
 }