Esempio n. 1
0
        private static void CreateReferences(
            ReferencedSymbol referencedSymbol,
            ImmutableArray <SourceReferenceItem> .Builder references,
            DefinitionItem definitionItem,
            HashSet <DocumentLocation> uniqueLocations)
        {
            foreach (var referenceLocation in referencedSymbol.Locations)
            {
                var location = referenceLocation.Location;
                Debug.Assert(location.IsInSource);

                var document   = referenceLocation.Document;
                var sourceSpan = location.SourceSpan;

                var documentLocation = new DocumentLocation(document, sourceSpan);
                if (!documentLocation.CanNavigateTo())
                {
                    continue;
                }

                if (uniqueLocations.Add(documentLocation))
                {
                    references.Add(new SourceReferenceItem(definitionItem, documentLocation));
                }
            }
        }
 public override bool CanNavigateTo() => _location.CanNavigateTo();