public async Task <SerializableNavigateToSearchResult[]> SearchDocumentAsync(
            SerializableDocumentId documentId, string searchPattern)
        {
            var solution = await GetSolutionAsync().ConfigureAwait(false);

            var project = solution.GetDocument(documentId.Rehydrate());
            var result  = await AbstractNavigateToSearchService.SearchDocumentInCurrentProcessAsync(
                project, searchPattern, CancellationToken).ConfigureAwait(false);

            return(Convert(result));
        }
Пример #2
0
        private static async Task <ImmutableArray <SymbolInformation> > SearchDocumentAsync(Document document, string query, CancellationToken cancellationToken)
        {
            cancellationToken.ThrowIfCancellationRequested();

            var results = await AbstractNavigateToSearchService.SearchDocumentInCurrentProcessAsync(
                document,
                query,
                s_supportedKinds,
                cancellationToken).ConfigureAwait(false);

            return(await ConvertAsync(results, cancellationToken).ConfigureAwait(false));
        }
        public async Task <ImmutableArray <SerializableNavigateToSearchResult> > SearchDocumentAsync(
            DocumentId documentId, string searchPattern, CancellationToken cancellationToken)
        {
            using (UserOperationBooster.Boost())
            {
                var solution = await GetSolutionAsync(cancellationToken).ConfigureAwait(false);

                var project = solution.GetDocument(documentId);
                var result  = await AbstractNavigateToSearchService.SearchDocumentInCurrentProcessAsync(
                    project, searchPattern, cancellationToken).ConfigureAwait(false);

                return(Convert(result));
            }
        }
Пример #4
0
        public Task <IList <SerializableNavigateToSearchResult> > SearchDocumentAsync(
            DocumentId documentId, string searchPattern, string[] kinds, CancellationToken cancellationToken)
        {
            return(RunServiceAsync(async() =>
            {
                using (UserOperationBooster.Boost())
                {
                    var solution = await GetSolutionAsync(cancellationToken).ConfigureAwait(false);

                    var project = solution.GetDocument(documentId);
                    var result = await AbstractNavigateToSearchService.SearchDocumentInCurrentProcessAsync(
                        project, searchPattern, kinds.ToImmutableHashSet(), cancellationToken).ConfigureAwait(false);

                    return Convert(result);
                }
            }, cancellationToken));
        }