protected static async Task<ImmutableArray<ReferenceLocation>> FindReferencesInDocumentUsingIdentifierAsync( string identifier, Document document, Func<SyntaxToken, SemanticModel, ValueTuple<bool, CandidateReason>> symbolsMatch, CancellationToken cancellationToken) { var tokens = await document.GetIdentifierOrGlobalNamespaceTokensWithTextAsync(identifier, cancellationToken).ConfigureAwait(false); var syntaxFacts = document.GetLanguageService<ISyntaxFactsService>(); Func<SyntaxToken, bool> tokensMatch = t => IdentifiersMatch(syntaxFacts, identifier, t); return await FindReferencesInTokensAsync( document, tokens, tokensMatch, symbolsMatch, cancellationToken).ConfigureAwait(false); }