未验证 提交 8d1fca3c 编写于 作者: I Ivan Basov 提交者: GitHub

Merge pull request #36522 from ivanbasov/speculative-t

Change order of C# completion providers to get better completions for type parameter T
......@@ -5289,6 +5289,45 @@ class C
End Using
End Function
<WpfTheory, Trait(Traits.Feature, Traits.Features.Completion)>
<MemberData(NameOf(AllCompletionImplementations))>
<WorkItem(24960, "https://github.com/dotnet/roslyn/issues/24960")>
Public Async Function TypeParameterTOnType(completionImplementation As CompletionImplementation) As Task
Using state = TestStateFactory.CreateCSharpTestState(completionImplementation,
<Document><![CDATA[
class C<T>
{
$$
}]]>
</Document>)
state.SendTypeChars("T")
Await state.WaitForAsynchronousOperationsAsync()
Await state.AssertSelectedCompletionItem("T")
End Using
End Function
<WpfTheory, Trait(Traits.Feature, Traits.Features.Completion)>
<MemberData(NameOf(AllCompletionImplementations))>
<WorkItem(24960, "https://github.com/dotnet/roslyn/issues/24960")>
Public Async Function TypeParameterTOnMethod(completionImplementation As CompletionImplementation) As Task
Using state = TestStateFactory.CreateCSharpTestState(completionImplementation,
<Document><![CDATA[
class C
{
void M<T>()
{
$$
}
}]]>
</Document>)
state.SendTypeChars("T")
Await state.WaitForAsynchronousOperationsAsync()
Await state.AssertSelectedCompletionItem("T")
End Using
End Function
Private Class MultipleChangeCompletionProvider
Inherits CompletionProvider
......
......@@ -43,12 +43,12 @@ internal class CSharpCompletionService : CommonCompletionService
new AttributeNamedParameterCompletionProvider(),
new NamedParameterCompletionProvider(),
new KeywordCompletionProvider(),
new SpeculativeTCompletionProvider(),
new SymbolCompletionProvider(),
new ExplicitInterfaceMemberCompletionProvider(),
new ExplicitInterfaceTypeCompletionProvider(),
new ObjectCreationCompletionProvider(),
new ObjectInitializerCompletionProvider(),
new SpeculativeTCompletionProvider(),
new CSharpSuggestionModeCompletionProvider(),
new EnumAndCompletionListTagCompletionProvider(),
new CrefCompletionProvider(),
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册