1 instantiation of TypeHierarchyItem
Microsoft.CodeAnalysis.LanguageServer.Protocol (1)
Handler\TypeHierarchy\TypeHierarchyHelpers.cs (1)
67
return new LSP.
TypeHierarchyItem
54 references to TypeHierarchyItem
Microsoft.CodeAnalysis.LanguageServer.Protocol (26)
Handler\TypeHierarchy\PrepareTypeHierarchyHandler.cs (3)
21
internal sealed class PrepareTypeHierarchyHandler() : ILspServiceDocumentRequestHandler<LSP.TypeHierarchyPrepareParams, LSP.
TypeHierarchyItem
[]?>
30
public async Task<LSP.
TypeHierarchyItem
[]?> HandleRequestAsync(LSP.TypeHierarchyPrepareParams request, RequestContext context, CancellationToken cancellationToken)
42
var
item = await TypeHierarchyHelpers.CreateItemAsync(typeSymbol, solution, preferredDocumentId: document.Id, cancellationToken).ConfigureAwait(false);
Handler\TypeHierarchy\TypeHierarchyHelpers.cs (4)
17
public static TypeHierarchyResolveData GetResolveData(LSP.
TypeHierarchyItem
item)
26
LSP.
TypeHierarchyItem
item,
43
public static async Task<LSP.
TypeHierarchyItem
?> CreateItemAsync(
49
public static async Task<LSP.
TypeHierarchyItem
?> CreateItemAsync(
Handler\TypeHierarchy\TypeHierarchySubtypesHandler.cs (4)
22
internal sealed class TypeHierarchySubtypesHandler() : ILspServiceDocumentRequestHandler<LSP.TypeHierarchySubtypesParams, LSP.
TypeHierarchyItem
[]?>
31
public async Task<LSP.
TypeHierarchyItem
[]?> HandleRequestAsync(LSP.TypeHierarchySubtypesParams request, RequestContext context, CancellationToken cancellationToken)
42
using var _ = ArrayBuilder<LSP.
TypeHierarchyItem
>.GetInstance(out var items);
45
var
item = await TypeHierarchyHelpers.CreateItemAsync(derivedType, solution, cancellationToken).ConfigureAwait(false);
Handler\TypeHierarchy\TypeHierarchySupertypesHandler.cs (4)
22
internal sealed class TypeHierarchySupertypesHandler() : ILspServiceDocumentRequestHandler<LSP.TypeHierarchySupertypesParams, LSP.
TypeHierarchyItem
[]?>
31
public async Task<LSP.
TypeHierarchyItem
[]?> HandleRequestAsync(LSP.TypeHierarchySupertypesParams request, RequestContext context, CancellationToken cancellationToken)
42
using var _ = ArrayBuilder<LSP.
TypeHierarchyItem
>.GetInstance(out var items);
45
var
item = await TypeHierarchyHelpers.CreateItemAsync(baseType, solution, cancellationToken).ConfigureAwait(false);
Protocol\Methods.Navigation.cs (3)
187
public static readonly LspRequest<TypeHierarchyPrepareParams,
TypeHierarchyItem
[]?> PrepareTypeHierarchy = new(PrepareTypeHierarchyName);
206
public static readonly LspRequest<TypeHierarchySupertypesParams,
TypeHierarchyItem
[]?> TypeHierarchySupertypes = new(TypeHierarchySupertypesName);
223
public static readonly LspRequest<TypeHierarchySubtypesParams,
TypeHierarchyItem
[]?> TypeHierarchySubtypes = new(TypeHierarchySubtypesName);
Protocol\Navigation\TypeHierarchySubtypesParams.cs (4)
17
internal sealed class TypeHierarchySubtypesParams : TextDocumentPositionParams, IWorkDoneProgressParams, IPartialResultParams<
TypeHierarchyItem
[]>
20
/// The <see cref="
TypeHierarchyItem
"/> for which to return subtypes
24
public
TypeHierarchyItem
Item { get; init; }
37
public IProgress<
TypeHierarchyItem
[]>? PartialResultToken { get; set; }
Protocol\Navigation\TypeHierarchySupertypesParams.cs (4)
17
internal sealed class TypeHierarchySupertypesParams : TextDocumentPositionParams, IWorkDoneProgressParams, IPartialResultParams<
TypeHierarchyItem
[]>
20
/// The <see cref="
TypeHierarchyItem
"/> for which to return supertypes
24
public
TypeHierarchyItem
Item { get; init; }
37
public IProgress<
TypeHierarchyItem
[]>? PartialResultToken { get; set; }
Microsoft.CodeAnalysis.LanguageServer.Protocol.UnitTests (28)
TypeHierarchy\TypeHierarchyTests.cs (28)
31
var
preparedItem = Assert.Single(await RunPrepareTypeHierarchyAsync(testLspServer, testLspServer.GetLocations("caret").Single()));
58
var
preparedItem = Assert.Single(await RunPrepareTypeHierarchyAsync(testLspServer, testLspServer.GetLocations("caret").Single()));
79
var
preparedItem = Assert.Single(await RunPrepareTypeHierarchyAsync(testLspServer, testLspServer.GetLocations("caret").Single()));
100
var
preparedItem = Assert.Single(await RunPrepareTypeHierarchyAsync(testLspServer, testLspServer.GetLocations("caret").Single()));
130
var
preparedItem = Assert.Single(await RunPrepareTypeHierarchyAsync(testLspServer, testLspServer.GetLocations("caret").Single()));
152
var
preparedItem = Assert.Single(await RunPrepareTypeHierarchyAsync(testLspServer, testLspServer.GetLocations("caret").Single()));
225
var
preparedItem = Assert.Single(await RunPrepareTypeHierarchyAsync(testLspServer, testLspServer.GetLocations("caret").Single()));
265
var
preparedItem = Assert.Single(await RunPrepareTypeHierarchyAsync(testLspServer, testLspServer.GetLocations("caret").Single()));
313
var
preparedItem = Assert.Single(await RunPrepareTypeHierarchyAsync(testLspServer, testLspServer.GetLocations("caret").Single()));
321
var
midItem = Assert.Single(supertypes);
325
var
baseItem = Assert.Single(midSupertypes);
329
var
midInterfaceItem = Assert.Single(baseSupertypes);
333
var
topInterfaceItem = Assert.Single(midInterfaceSupertypes);
371
var
preparedItem = Assert.Single(await RunPrepareTypeHierarchyAsync(testLspServer, testLspServer.GetLocations("caret").Single()));
383
var
childItem = Assert.Single(subtypes, static item => item.Name == "IChild");
385
var
grandchildItem = Assert.Single(childSubtypes);
389
var
indirectImplementationItem = Assert.Single(grandchildSubtypes);
393
private static void AssertContainsItem(LSP.
TypeHierarchyItem
[] items, string expectedName, LSP.Location expectedDefinition)
395
var
item = Assert.Single(items, i => i.Name == expectedName);
399
private static void AssertEqualsItem(LSP.
TypeHierarchyItem
item, string expectedName, LSP.Location expectedDefinition)
406
private static async Task<LSP.
TypeHierarchyItem
[]> RunPrepareTypeHierarchyAsync(TestLspServer testLspServer, LSP.Location caret)
407
=> await testLspServer.ExecuteRequestAsync<LSP.TypeHierarchyPrepareParams, LSP.
TypeHierarchyItem
[]?>(
416
private static async Task<LSP.
TypeHierarchyItem
[]> RunSupertypesAsync(TestLspServer testLspServer, LSP.
TypeHierarchyItem
item)
417
=> await testLspServer.ExecuteRequestAsync<LSP.TypeHierarchySupertypesParams, LSP.
TypeHierarchyItem
[]?>(
427
private static async Task<LSP.
TypeHierarchyItem
[]> RunSubtypesAsync(TestLspServer testLspServer, LSP.
TypeHierarchyItem
item)
428
=> await testLspServer.ExecuteRequestAsync<LSP.TypeHierarchySubtypesParams, LSP.
TypeHierarchyItem
[]?>(