4 instantiations of SymbolKey
Microsoft.CodeAnalysis.CSharp.EditorFeatures.UnitTests (1)
SymbolKey\SymbolKeyTestBase.cs (1)
86var deserialized = new SymbolKey(serialized);
Microsoft.CodeAnalysis.VisualBasic.EditorFeatures.UnitTests (1)
SymbolId\SymbolKeyTestBase.vb (1)
78Dim deserialized = New SymbolKey(serialized)
Microsoft.CodeAnalysis.Workspaces (2)
SymbolKey.cs (2)
135=> new(CreateString(symbol, cancellationToken)); 236/// and used later with <see cref="SymbolKey(string)"/> to then try to resolve back
290 references to SymbolKey
Microsoft.CodeAnalysis.CSharp.EditorFeatures.UnitTests (22)
SymbolKey\SymbolKeyCompilationsTests.cs (2)
434var symkey = SymbolKey.Create(typeSym02, CancellationToken.None);
SymbolKey\SymbolKeyErrorTypeTests.cs (2)
386var symbolKey = SymbolKey.CreateString(symbol); 398var resolution = SymbolKey.ResolveString(symbolKey, emptyCompilation, ignoreAssemblyKey: true, out var failureReason, CancellationToken.None);
SymbolKey\SymbolKeyTestBase.cs (9)
82var sid = SymbolKey.Create(originalSymbol, CancellationToken.None); 86var deserialized = new SymbolKey(serialized); 87var comparer = SymbolKey.GetComparer(ignoreCase: false, ignoreAssemblyKeys: false); 96var sid1 = SymbolKey.Create(symbol1, CancellationToken.None); 97var sid2 = SymbolKey.Create(symbol2, CancellationToken.None); 109var ret = CodeAnalysis.SymbolKey.GetComparer(ignoreCase, ignoreAssemblyIds).Equals(sid2, sid1);
SymbolKey\SymbolKeyTests.cs (9)
50var symbolKey = SymbolKey.Create(type); 89var symbolKey = SymbolKey.Create(type); 95symbolKey = SymbolKey.Create(type); 125var symbolKey = SymbolKey.Create(type); 174var symbolKey = SymbolKey.Create(method);
Microsoft.CodeAnalysis.CSharp.Workspaces (1)
Rename\CSharpRenameRewriterLanguageService.cs (1)
552(Equals(symbol, _renamedSymbol) || SymbolKey.GetComparer(ignoreCase: true, ignoreAssemblyKeys: false).Equals(symbol.GetSymbolKey(), _renamedSymbol.GetSymbolKey())))
Microsoft.CodeAnalysis.EditorFeatures (1)
IntelliSense\Helpers.cs (1)
211resolvedSymbolKey = SymbolKey.ResolveString(navigationTarget, compilation, cancellationToken: cancellationToken);
Microsoft.CodeAnalysis.EditorFeatures.Test.Utilities (2)
EditAndContinue\EditAndContinueTestHelpers.cs (2)
234.GroupBy(e => e.Symbol, SymbolKey.GetComparer(ignoreCase: false, ignoreAssemblyKeys: true)) 294var symbolKey = actualSemanticEdit.Symbol;
Microsoft.CodeAnalysis.EditorFeatures.UnitTests (3)
MetadataAsSource\AbstractMetadataAsSourceTests.cs (2)
108var metadataSymbolId = metadataSymbol.GetSymbolKey(); 114Assert.True(SymbolKey.GetComparer(ignoreCase: true, ignoreAssemblyKeys: false).Equals(metadataSymbolId, generatedSymbol.GetSymbolKey()));
SymbolKey\SymbolKeyCrossLanguageTests.cs (1)
53var resolved = SymbolKey.ResolveString(methodSymbol.GetSymbolKey().ToString(), vbCompilation, out var failureReason, CancellationToken.None);
Microsoft.CodeAnalysis.EditorFeatures.Wpf (4)
Peek\DefinitionPeekableItem.cs (2)
22private readonly SymbolKey _symbolKey; 28Workspace workspace, ProjectId projectId, SymbolKey symbolKey,
Peek\PeekableItemFactory.cs (2)
84var symbolKey = SymbolKey.Create(symbol, cancellationToken);
Microsoft.CodeAnalysis.ExternalAccess.OmniSharp (2)
MetadataAsSource\OmniSharpMetadataAsSourceHelpers.cs (2)
21var symbolKey = SymbolKey.Create(symbol, cancellationToken);
Microsoft.CodeAnalysis.Features (134)
Common\TaggedText.cs (1)
127=> symbol is null ? null : SymbolKey.CreateString(symbol);
Completion\Providers\ImportCompletionProvider\AbstractExtensionMethodImportCompletionProvider.cs (1)
62var receiverTypeKey = SymbolKey.CreateString(receiverTypeSymbol, cancellationToken);
Completion\Providers\ImportCompletionProvider\AbstractTypeImportCompletionService.cs (1)
223using var builder = new TypeImportCompletionCacheEntry.Builder(SymbolKey.Create(assembly, cancellationToken), checksum, Language, GenericTypeSuffix, editorBrowsableInfo);
Completion\Providers\ImportCompletionProvider\ExtensionMethodImportCompletionHelper.cs (3)
65var receiverTypeSymbolKeyData = SymbolKey.CreateString(receiverTypeSymbol, cancellationToken); 66var targetTypesSymbolKeyData = targetTypesSymbols.SelectAsArray(s => SymbolKey.CreateString(s, cancellationToken)); 193SymbolKey.CreateString(bestSymbol, cancellationToken),
Completion\Providers\ImportCompletionProvider\ImportCompletionItem.cs (2)
175var methodSymbol = SymbolKey.ResolveString(methodSymbolKey, compilation).GetAnySymbol() as IMethodSymbol; 184if (SymbolKey.ResolveString(receiverTypeKey, compilation).GetAnySymbol() is ITypeSymbol receiverTypeSymbol)
Completion\Providers\ImportCompletionProvider\TypeImportCompletionCacheEntry.cs (4)
17public SymbolKey AssemblySymbolKey { get; } 32SymbolKey assemblySymbolKey, 129private readonly SymbolKey _assemblySymbolKey; 139public Builder(SymbolKey assemblySymbolKey, Checksum checksum, string language, string genericTypeSuffix, EditorBrowsableInfo editorBrowsableInfo)
Completion\Providers\SymbolCompletionItem.cs (2)
117=> SymbolKey.CreateString(symbol); 174=> SymbolKey.ResolveString(id, compilation).GetAnySymbol();
DocumentationComments\AbstractDocumentationCommentFormattingService.cs (1)
459return (target: SymbolKey.CreateString(symbol), hint: symbol.ToMinimalDisplayString(semanticModel, position, format ?? SymbolDisplayFormat.MinimallyQualifiedFormat));
EditAndContinue\AbstractEditAndContinueAnalyzer.cs (49)
2473var oldSymbolInNewCompilation = SymbolKey.Create(oldSymbol, cancellationToken).Resolve(newCompilation, ignoreAssemblyKey: true, cancellationToken).Symbol; 2474var newSymbolInOldCompilation = SymbolKey.Create(newSymbol, cancellationToken).Resolve(oldCompilation, ignoreAssemblyKey: true, cancellationToken).Symbol; 2499var symbolKey = SymbolKey.Create(symbol, cancellationToken); 2533var containingTypeSymbolKey = SymbolKey.Create(containingType, cancellationToken); 2737var containingSymbolKey = SymbolKey.Create(oldSymbol.ContainingType, cancellationToken); 2937var containingSymbolKey = SymbolKey.Create(newContainingType, cancellationToken); 3169SymbolKey.Create(oldSymbol, cancellationToken).Resolve(newCompilation, ignoreAssemblyKey: true, cancellationToken).Symbol is null) 3180var containingSymbolKey = SymbolKey.Create(oldSymbol.ContainingType, cancellationToken); 3234var containingTypeSymbolKey = SymbolKey.Create(oldContainingType, cancellationToken); 3289var symbolKey = SymbolKey.Create(newSymbol, cancellationToken); 3418var containingSymbolKey = SymbolKey.Create(oldSymbol.ContainingType, cancellationToken); 3422var symbolKey = SymbolKey.Create(newSymbol, cancellationToken); 3475private static void AddMemberOrAssociatedMemberSemanticEdits(ArrayBuilder<SemanticEditInfo> semanticEdits, SemanticEditKind editKind, ISymbol symbol, SymbolKey? containingSymbolKey, Func<SyntaxNode, SyntaxNode?>? syntaxMap, SymbolKey? partialType, HashSet<ISymbol>? processedSymbols, CancellationToken cancellationToken) 3546var symbolKey = SymbolKey.Create(symbol, cancellationToken); 3580var newType = SymbolKey.Create(oldType, cancellationToken).Resolve(newModel.Compilation, ignoreAssemblyKey: true, cancellationToken).Symbol; 3613var oldType = SymbolKey.Create(newType, cancellationToken).Resolve(oldModel.Compilation, ignoreAssemblyKey: true, cancellationToken).Symbol; 3663private static readonly IEqualityComparer<SymbolKey> s_symbolKeyComparer = SymbolKey.GetComparer(); 4216var containingSymbolKey = SymbolKey.Create(oldSymbol.ContainingSymbol, cancellationToken); 4248semanticEdits.Add(new SemanticEditInfo(SemanticEditKind.Update, SymbolKey.Create(newDelegateType, cancellationToken), syntaxMap, syntaxMapTree: null, partialType: null)); 4254semanticEdits.Add(new SemanticEditInfo(SemanticEditKind.Update, SymbolKey.Create(newDelegateInvokeMethod, cancellationToken), syntaxMap, syntaxMapTree: null, partialType: null)); 4260var symbolKey = SymbolKey.Create(newSymbol, cancellationToken); 4266var containingTypeSymbolKey = SymbolKey.Create(newSymbol.ContainingSymbol, cancellationToken); 4272semanticEdits.Add(new SemanticEditInfo(SemanticEditKind.Update, SymbolKey.Create(newSymbol, cancellationToken), syntaxMap, syntaxMapTree: null, partialType: null)); 4287var containingSymbolKey = SymbolKey.Create(oldContainingSymbol.ContainingSymbol, cancellationToken); 4293semanticEdits.Add(new SemanticEditInfo(SemanticEditKind.Update, SymbolKey.Create(newContainingSymbol, cancellationToken), syntaxMap, syntaxMapTree: null, partialType: null)); 4311semanticEdits.Add(new SemanticEditInfo(SemanticEditKind.Update, SymbolKey.Create(beginInvokeMethod, cancellationToken), syntaxMap, syntaxMapTree: null, partialType: null)); 4525var symbolKey = SymbolKey.Create(member, cancellationToken); 4657var containerKey = SymbolKey.Create(oldContainer, cancellationToken); 4899var newCtorKey = SymbolKey.Create(newCtor, cancellationToken); 5043partialType: isPartialEdit ? SymbolKey.Create(newType, cancellationToken) : null));
EditAndContinue\EditSession.cs (2)
743var symbolKeyComparer = SymbolKey.GetComparer(ignoreCase: false, ignoreAssemblyKeys: true); 744var mergedSyntaxMaps = new Dictionary<SymbolKey, Func<SyntaxNode, SyntaxNode?>?>(symbolKeyComparer);
EditAndContinue\SemanticEditInfo.cs (10)
22/// We use <see cref="SymbolKey"/> to represent the symbol rather then <see cref="ISymbol"/>, 24/// When the edits are processed we map the <see cref="SymbolKey"/> to the current compilation. 26public SymbolKey Symbol { get; } 31/// We use <see cref="SymbolKey"/> to represent the symbol rather then <see cref="ISymbol"/>, 33/// When the edits are processed we map the <see cref="SymbolKey"/> to the current compilation. 35public SymbolKey? DeletedSymbolContainer { get; } 54public SymbolKey? PartialType { get; } 58SymbolKey symbol, 61SymbolKey? partialType, 62SymbolKey? deletedSymbolContainer = null)
EncapsulateField\AbstractEncapsulateFieldService.cs (1)
116var fieldSymbolKeys = fields.SelectAsArray(f => SymbolKey.CreateString(f, cancellationToken));
FindUsages\DefinitionItem.cs (1)
47/// metadata-as-source for metadata symbols. We need to store the <see cref="SymbolKey"/>
FindUsages\DefinitionItem.DefaultDefinitionItem.cs (1)
76var symbol = SymbolKey.ResolveString(symbolKey, compilation, cancellationToken: cancellationToken).Symbol;
GenerateMember\GenerateConstructor\GenerateConstructorHelpers.cs (1)
83var constructorInCompilation = (IMethodSymbol?)SymbolKey.Create(constructor).Resolve(semanticModel.Compilation).Symbol;
InlineHints\InlineHintHelpers.cs (2)
19public static Func<Document, CancellationToken, Task<ImmutableArray<TaggedText>>>? GetDescriptionFunction(int position, SymbolKey symbolKey, SymbolDescriptionOptions options) 22private static async Task<ImmutableArray<TaggedText>> GetDescriptionAsync(Document document, int position, SymbolKey symbolKey, SymbolDescriptionOptions options, CancellationToken cancellationToken)
MetadataAsSource\DecompilationMetadataAsSourceFileProvider.cs (10)
75var symbolId = SymbolKey.Create(symbol, cancellationToken); 229private async Task<Location> RelocateSymbol_NoLockAsync(Solution solution, MetadataAsSourceGeneratedFileInfo fileInfo, SymbolKey symbolId, CancellationToken cancellationToken) 357return new UniqueDocumentKey(peMetadataReference.FilePath, peMetadataReference.GetMetadataId(), project.Language, SymbolKey.Create(topLevelNamedType, cancellationToken), signaturesOnly); 362return new UniqueDocumentKey(containingAssembly.Identity, containingAssembly.GetMetadata()?.Id, project.Language, SymbolKey.Create(topLevelNamedType, cancellationToken), signaturesOnly); 368private static readonly IEqualityComparer<SymbolKey> s_symbolIdComparer = SymbolKey.GetComparer(ignoreCase: false, ignoreAssemblyKeys: true); 382private readonly SymbolKey _symbolId; 385public UniqueDocumentKey(string filePath, MetadataId? metadataId, string language, SymbolKey symbolId, bool signaturesOnly) 396public UniqueDocumentKey(AssemblyIdentity assemblyIdentity, MetadataId? metadataId, string language, SymbolKey symbolId, bool signaturesOnly)
MetadataAsSource\MetadataAsSourceFileService.cs (1)
207internal async Task<SymbolMappingResult?> MapSymbolAsync(Document document, SymbolKey symbolId, CancellationToken cancellationToken)
MetadataAsSource\MetadataAsSourceHelpers.cs (1)
63public static async Task<Location> GetLocationInGeneratedSourceAsync(SymbolKey symbolId, Document generatedDocument, CancellationToken cancellationToken)
MetadataAsSource\SymbolMappingServiceFactory.cs (2)
37public Task<SymbolMappingResult?> MapSymbolAsync(Document document, SymbolKey symbolId, CancellationToken cancellationToken) 46=> MapSymbolAsync(document, SymbolKey.Create(symbol, cancellationToken), cancellationToken);
NavigationBar\IRemoteNavigationBarItemService.cs (12)
52public readonly SymbolKey? DestinationTypeSymbolKey; 59public readonly SymbolKey? EventSymbolKey; 64public readonly SymbolKey? MethodToReplicateSymbolKey; 77SymbolKey? destinationTypeSymbolKey, 79SymbolKey? eventSymbolKey, 80SymbolKey? methodToReplicateSymbolKey) 119public static SerializableNavigationBarItem GenerateFinalizer(string text, SymbolKey destinationTypeSymbolKey) 122public static SerializableNavigationBarItem GenerateEventHandler(string eventName, Glyph glyph, string containerName, SymbolKey eventSymbolKey, SymbolKey destinationTypeSymbolKey) 125public static SerializableNavigationBarItem GenerateMethod(string text, Glyph glyph, SymbolKey destinationTypeSymbolId, SymbolKey methodToReplicateSymbolId) 128public static SerializableNavigationBarItem GenerateDefaultConstructor(string text, SymbolKey destinationTypeSymbolKey)
NavigationBar\NavigationBarItems\RoslynNavigationBarItem.AbstractGenerateCodeItem.cs (2)
13public readonly SymbolKey DestinationTypeSymbolKey; 15protected AbstractGenerateCodeItem(RoslynNavigationBarItemKind kind, string text, Glyph glyph, SymbolKey destinationTypeSymbolKey)
NavigationBar\NavigationBarItems\RoslynNavigationBarItem.GenerateDefaultConstructorItem.cs (1)
13public GenerateDefaultConstructor(string text, SymbolKey destinationTypeSymbolKey)
NavigationBar\NavigationBarItems\RoslynNavigationBarItem.GenerateEventHandlerItem.cs (3)
14public readonly SymbolKey EventSymbolKey; 16public GenerateEventHandler(string text, Glyph glyph, string containerName, SymbolKey eventSymbolKey, SymbolKey destinationTypeSymbolKey)
NavigationBar\NavigationBarItems\RoslynNavigationBarItem.GenerateFinalizerItem.cs (1)
13public GenerateFinalizer(string text, SymbolKey destinationTypeSymbolKey)
NavigationBar\NavigationBarItems\RoslynNavigationBarItem.GenerateMethodItem.cs (3)
13public readonly SymbolKey MethodToReplicateSymbolKey; 15public GenerateMethod(string text, Glyph glyph, SymbolKey destinationTypeSymbolId, SymbolKey methodToReplicateSymbolId)
PdbSourceDocument\PdbSourceDocumentMetadataAsSourceFileProvider.cs (4)
154var key = SymbolKey.Create(symbolToFind, cancellationToken); 246var symbolId = SymbolKey.Create(symbol, cancellationToken);
SignatureHelp\AbstractSignatureHelpProvider.cs (2)
266symbolKeyItem.SymbolKey is not SymbolKey symbolKey || 277symbolKey = SymbolKey.Create(methodSymbol.OriginalDefinition, cancellationToken);
SignatureHelp\AbstractSignatureHelpProvider.SymbolKeySignatureHelpItem.cs (3)
15public SymbolKey? SymbolKey { get; } 39CodeAnalysis.SymbolKey.GetComparer(ignoreCase: false, ignoreAssemblyKeys: false).Equals(SymbolKey.Value, obj.SymbolKey.Value)); 49var comparer = CodeAnalysis.SymbolKey.GetComparer(ignoreCase: false, ignoreAssemblyKeys: false);
SymbolMapping\ISymbolMappingService.cs (1)
22Task<SymbolMappingResult?> MapSymbolAsync(Document document, SymbolKey symbolId, CancellationToken cancellationToken = default);
SymbolMapping\SymbolMappingServiceFactory.cs (1)
24public async Task<SymbolMappingResult> MapSymbolAsync(Document document, SymbolKey symbolId, CancellationToken cancellationToken)
ValueTracking\SerializableValueTrackedItem.cs (2)
18public SymbolKey SymbolKey { get; } 30SymbolKey symbolKey,
ValueTracking\ValueTrackedItem.cs (3)
19public SymbolKey SymbolKey { get; } 28SymbolKey symbolKey, 58SymbolKey.Create(symbol, cancellationToken),
Microsoft.CodeAnalysis.Remote.ServiceHub (5)
Services\EncapsulateField\RemoteEncapsulateFieldService.cs (1)
58var resolved = SymbolKey.ResolveString(key, compilation, cancellationToken: cancellationToken).GetAnySymbol() as IFieldSymbol;
Services\ExtensionMethodImportCompletion\RemoteExtensionMethodImportCompletionService.cs (2)
49var symbol = SymbolKey.ResolveString(receiverTypeSymbolKeyData, compilation, cancellationToken: cancellationToken).GetAnySymbol(); 56.Select(symbolKey => SymbolKey.ResolveString(symbolKey, compilation, cancellationToken: cancellationToken).GetAnySymbol() as ITypeSymbol)
Services\Renamer\RemoteRenamerService.cs (2)
41ImmutableArray<SymbolKey> nonConflictSymbolKeys, 93ImmutableArray<SymbolKey> nonConflictSymbolKeys,
Microsoft.CodeAnalysis.VisualBasic.EditorFeatures.UnitTests (6)
SymbolId\SymbolKeyTestBase.vb (6)
74Dim sid = SymbolKey.Create(originalSymbol, CancellationToken.None) 80Dim comparer = SymbolKey.GetComparer(ignoreCase:=False, ignoreAssemblyKeys:=False) 89Dim sid1 = SymbolKey.Create(symbol1, CancellationToken.None) 90Dim sid2 = SymbolKey.Create(symbol2, CancellationToken.None) 100Assert.[True](CodeAnalysis.SymbolKey.GetComparer(ignoreCase, ignoreAssemblyIds).Equals(sid2, sid1), message) 102Assert.[False](CodeAnalysis.SymbolKey.GetComparer(ignoreCase, ignoreAssemblyIds).Equals(sid2, sid1), message)
Microsoft.CodeAnalysis.VisualBasic.Workspaces (1)
Rename\VisualBasicRenameRewriterLanguageService.vb (1)
405(Equals(symbol, Me._renamedSymbol) OrElse SymbolKey.GetComparer(ignoreCase:=True, ignoreAssemblyKeys:=False).Equals(symbol.GetSymbolKey(), Me._renamedSymbol.GetSymbolKey())) Then
Microsoft.CodeAnalysis.Workspaces (48)
ExternalAccess\UnitTesting\Api\UnitTestingSymbolExtensions.cs (1)
13=> SymbolKey.Create(symbol, cancellationToken).ToString();
FindSymbols\SymbolFinder.cs (2)
187var symbolId = symbol.GetSymbolKey(cancellationToken); 231var key = symbol.GetSymbolKey(cancellationToken);
FindSymbols\SymbolFinder_FindReferences_Current.cs (1)
42if (!SymbolKey.IsBodyLevelSymbol(symbol) && SerializableSymbolAndProjectId.TryCreate(symbol, solution, cancellationToken, out var serializedSymbol))
Remote\RemoteArguments.cs (3)
95if (!SymbolKey.CanCreate(symbol, cancellationToken)) 101result = new SerializableSymbolAndProjectId(SymbolKey.CreateString(symbol, cancellationToken), project.Id); 114var symbol = SymbolKey.ResolveString(
Rename\ConflictEngine\ConflictResolver.cs (3)
56ImmutableArray<SymbolKey> nonConflictSymbolKeys, 98ImmutableArray<SymbolKey> nonConflictSymbolKeys, 119ImmutableArray<SymbolKey> nonConflictSymbolKeys,
Rename\ConflictEngine\ConflictResolver.Session.cs (2)
41private readonly ImmutableArray<SymbolKey> _nonConflictSymbolKeys; 55ImmutableArray<SymbolKey> nonConflictSymbolKeys,
Rename\IRemoteRenamerService.cs (2)
42ImmutableArray<SymbolKey> nonConflictSymbolKeys, 58ImmutableArray<SymbolKey> nonConflictSymbolKeys,
Rename\LightweightRenameLocations.cs (1)
123public Task<ConflictResolution> ResolveConflictsAsync(ISymbol symbol, string replacementText, ImmutableArray<SymbolKey> nonConflictSymbolKeys, CancellationToken cancellationToken)
Rename\Renamer.cs (2)
160ImmutableArray<SymbolKey> nonConflictSymbolKeys, 208ImmutableArray<SymbolKey> nonConflictSymbolKeys,
SymbolKey.BodyLevelSymbolKey.cs (2)
244if (!SymbolKey.Equals(reader.Compilation, name, symbol.Name)) 267SymbolKey.Equals(semanticModel.Compilation, symbol.Name, localName))
SymbolKey.cs (16)
20/// A <see cref="SymbolKey"/> is a lightweight identifier for a symbol that can be used to 97/// <see cref="SymbolKey"/>s are not guaranteed to work across different versions of Roslyn. They can be persisted 103/// The string values produced by <see cref="CreateString"/> (or <see cref="SymbolKey.ToString"/>) should not be 105/// 'same' symbol might produce different strings. Instead, to compare keys use <see cref="SymbolKey.GetComparer"/> 110internal partial struct SymbolKey : IEquatable<SymbolKey> 124/// Constructs a new <see cref="SymbolKey"/> using the result of a previous call to 132/// Constructs a new <see cref="SymbolKey"/> representing the provided <paramref name="symbol"/>. 134public static SymbolKey Create(ISymbol? symbol, CancellationToken cancellationToken = default) 138/// Returns an <see cref="IEqualityComparer{T}"/> that determines if two <see cref="SymbolKey"/>s 150public static IEqualityComparer<SymbolKey> GetComparer(bool ignoreCase = false, bool ignoreAssemblyKeys = false) 193failureReason = $"({nameof(SymbolKey)} invalid format '${version}')"; 225/// Tries to resolve this <see cref="SymbolKey"/> in the given 235/// Returns this <see cref="SymbolKey"/> encoded as a string. This can be persisted 357=> obj is SymbolKey symbolKey && this.Equals(symbolKey); 359public readonly bool Equals(SymbolKey other) 362private readonly bool Equals(SymbolKey other, bool ignoreCase)
SymbolKey.ParameterSymbolKey.cs (1)
82if (SymbolKey.Equals(reader.Compilation, parameter.MetadataName, metadataName))
SymbolKey.SymbolKeyComparer.cs (6)
12private class SymbolKeyComparer : IEqualityComparer<SymbolKey> 19public bool Equals(SymbolKey x, SymbolKey y) 49public int GetHashCode(SymbolKey obj) 52public static IEqualityComparer<SymbolKey> GetComparer(bool ignoreCase, bool ignoreAssemblyKey) 63public static IEqualityComparer<SymbolKey> GetComparer(ComparisonOptions options)
SymbolKeyExtensions.cs (2)
11public static SymbolKey GetSymbolKey(this ISymbol? symbol, CancellationToken cancellationToken = default) 12=> SymbolKey.Create(symbol, cancellationToken);
SymbolKeyResolution.cs (2)
10/// The result of <see cref="SymbolKey.Resolve"/>. If the <see cref="SymbolKey"/> could be uniquely mapped to a
Workspace\Solution\SolutionState.SymbolToProjectId.cs (1)
27if (SymbolKey.IsBodyLevelSymbol(symbol))
Workspace\Solution\SolutionState.UnrootedSymbolSet.cs (1)
24/// cref="SymbolKey"/>) to resolve that symbol back in that that <see cref="Project"/>.
Microsoft.CodeAnalysis.Workspaces.UnitTests (38)
SymbolKeyTests.cs (38)
67TestVersion(symbol, compilation, SymbolKey.FormatVersion - 1); 68TestVersion(symbol, compilation, SymbolKey.FormatVersion + 1); 74var id = SymbolKey.CreateStringWorker(version, symbol); 76var found = SymbolKey.ResolveString(id, compilation).GetAnySymbol(); 815Assert.NotEqual(default, SymbolKey.Create(xSymbol)); 862Assert.NotEqual(default, SymbolKey.Create(xSymbol)); 887var key = SymbolKey.Create(method); 917var id = SymbolKey.CreateString(symbol); 919var found = SymbolKey.ResolveString(id, compilation).GetAnySymbol(); 955var id = SymbolKey.CreateString(symbol); 960var found = SymbolKey.ResolveString(id, compilation2).GetAnySymbol(); 992var id = SymbolKey.CreateString(symbol); 997var found = SymbolKey.ResolveString(id, compilation2).GetAnySymbol(); 1028var id = SymbolKey.CreateString(propType); 1033var found = SymbolKey.ResolveString(id, compilation2).GetAnySymbol(); 1063var id = SymbolKey.CreateString(propType); 1068var found = SymbolKey.ResolveString(id, compilation2).GetAnySymbol(); 1112var id = SymbolKey.CreateString(propType); 1117var found = SymbolKey.ResolveString(id, compilation2).GetAnySymbol(); 1159var id = SymbolKey.CreateString(propType); 1164var found = SymbolKey.ResolveString(id, compilation2).GetAnySymbol(); 1211var id = SymbolKey.CreateString(symbol); 1216var found = SymbolKey.ResolveString(id, compilation1).GetAnySymbol(); 1225var id = SymbolKey.CreateString(symbol.OriginalDefinition); 1228var found = SymbolKey.ResolveString(id, compilation1).GetAnySymbol(); 1242var symbolKey1 = SymbolKey.Create(compilation1.GetSpecialType(SpecialType.System_Int32)); 1243var symbolKey2 = SymbolKey.Create(compilation2.GetSpecialType(SpecialType.System_Int32)); 1248Assert.True(SymbolKey.GetComparer(ignoreCase: true).Equals(symbolKey1, symbolKey2)); 1249Assert.True(SymbolKey.GetComparer(ignoreAssemblyKeys: true).Equals(symbolKey1, symbolKey2)); 1250Assert.True(SymbolKey.GetComparer(ignoreCase: true, ignoreAssemblyKeys: true).Equals(symbolKey1, symbolKey2)); 1333var symbols = methods.SelectMany(ms => GetInteriorSymbols(ms, compilation)).Where(s => SymbolKey.IsBodyLevelSymbol(s)).ToList(); 1353var key = SymbolKey.Create(symbol); 1376var id = SymbolKey.CreateString(symbol); 1378var found = SymbolKey.ResolveString(id, compilation).GetAnySymbol();
Microsoft.VisualStudio.LanguageServices (11)
CallHierarchy\Finders\AbstractCallFinder.cs (1)
25private readonly SymbolKey _symbolKey;
Library\ObjectBrowser\Lists\SymbolListItem.cs (1)
17private readonly SymbolKey _symbolKey;
Progression\GraphBuilder.cs (2)
118var symbolId = (SymbolKey?)inputNode[RoslynGraphProperties.SymbolId]; 208node[RoslynGraphProperties.SymbolId] = (SymbolKey?)symbol.GetSymbolKey(cancellationToken);
Progression\GraphNavigatorExtension.cs (2)
53var symbolId = graphNode.GetValue<SymbolKey?>(RoslynGraphProperties.SymbolId); 78SourceLocation sourceLocation, SymbolKey? symbolId, Project project, Document document, CancellationToken cancellationToken)
Progression\GraphProvider.cs (2)
332=> ((IList<SymbolKey>)node[RoslynGraphProperties.ExplicitInterfaceImplementations]).Count > 0; 367if (graphNode.GetValue<SymbolKey?>(RoslynGraphProperties.SymbolId) == null &&
Progression\RoslynGraphProperties.cs (2)
101dataType: typeof(IList<SymbolKey>), 106dataType: typeof(SymbolKey?),
Snippets\AbstractSnippetExpansionClient.cs (1)
745var newSymbolKey = (e.NewModel.SelectedItem as AbstractSignatureHelpProvider.SymbolKeySignatureHelpItem)?.SymbolKey ?? default;
Microsoft.VisualStudio.LanguageServices.Implementation (12)
CodeModel\AbstractCodeModelService.cs (1)
321public ISymbol? ResolveSymbol(Microsoft.CodeAnalysis.Workspace workspace, ProjectId projectId, SymbolKey symbolId)
CodeModel\CodeTypeRef.cs (1)
40private readonly SymbolKey _symbolId;
CodeModel\Collections\ExternalMemberCollection.cs (1)
33private readonly SymbolKey _typeSymbolId;
CodeModel\Collections\ExternalNamespaceCollection.cs (1)
33private readonly SymbolKey _namespaceSymbolId;
CodeModel\Collections\ExternalNamespaceEnumerator.cs (4)
21internal static IEnumerator Create(CodeModelState state, ProjectId projectId, SymbolKey namespaceSymbolId) 27private ExternalNamespaceEnumerator(CodeModelState state, ProjectId projectId, SymbolKey namespaceSymbolId) 38private readonly SymbolKey _namespaceSymbolId; 59internal static IEnumerable<EnvDTE.CodeElement> ChildrenOfNamespace(CodeModelState state, ProjectId projectId, SymbolKey namespaceSymbolId)
CodeModel\ExternalElements\AbstractExternalCodeElement.cs (1)
22internal readonly SymbolKey SymbolKey;
CodeModel\ICodeModelService.cs (1)
105ISymbol? ResolveSymbol(Microsoft.CodeAnalysis.Workspace workspace, ProjectId projectId, SymbolKey symbolId);
RoslynVisualStudioWorkspace.cs (2)
103var symbolId = SymbolKey.Create(symbol, cancellationToken);