/
githubmirror
/
roslyn
Обзор
Документация
Войти
/
githubmirror
/
roslyn
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/LanguageServer/Microsoft.CommonLanguageServerProtocol.Framework.UnitTests/Mocks/TestHandlerProvider.cs
23 строки
1 KB
Cyrus Najmabadi
Make sealed
26 мар 2025, 22:21
26 мар 2025, 22:21
d99b771
Код
Авторство
О чём код?
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. using System.Collections.Generic; using System.Collections.Immutable; using System.Linq; namespace Microsoft.CommonLanguageServerProtocol.Framework.UnitTests; internal sealed class TestHandlerProvider : AbstractHandlerProvider { private readonly IEnumerable<(RequestHandlerMetadata metadata, IMethodHandler provider)> _providers; public TestHandlerProvider(IEnumerable<(RequestHandlerMetadata metadata, IMethodHandler provider)> providers) => _providers = providers; public override IMethodHandler GetMethodHandler(string method, TypeRef? requestType, TypeRef? responseType, string language) => _providers.Single(p => p.metadata.MethodName == method && p.metadata.Language == language).provider; public override ImmutableArray<RequestHandlerMetadata> GetRegisteredMethods() => [.. _providers.Select(p => p.metadata)]; }