提交 a4c14cef 编写于 作者: D David Poeschl

Use language-specific string comparisons

上级 726e8d98
......@@ -8161,6 +8161,28 @@ End Class
Await VerifyItemExistsAsync(source, "Length")
End Function
<Fact, Trait(Traits.Feature, Traits.Features.Completion)>
<WorkItem(40216, "https://github.com/dotnet/roslyn/issues/40216")>
Public Async Function CompletionForLambdaPassedAsNamedArgumentAtDifferentPositionFromCorrespondingParameterWithDifferentCasing() As Task
Dim source =
<code><![CDATA[
Imports System
Class C
Sub Test()
M(Z:=Sub(x)
x.$$
End Sub)
End Sub
Sub M(x As Integer, y As Integer, z As Action(Of String))
End Sub
End Class
]]></code>.Value
Await VerifyItemExistsAsync(source, "Length")
End Function
<Fact, Trait(Traits.Feature, Traits.Features.Completion)>
Public Async Function CompletionInsideMethodsWithNonFunctionsAsArguments() As Task
Dim source =
......
......@@ -19,6 +19,7 @@ internal abstract class AbstractRecommendationServiceRunner<TSyntaxContext>
protected readonly TSyntaxContext _context;
protected readonly bool _filterOutOfScopeLocals;
protected readonly CancellationToken _cancellationToken;
private readonly StringComparer _stringComparerForLanguage;
public AbstractRecommendationServiceRunner(
TSyntaxContext context,
......@@ -26,6 +27,7 @@ internal abstract class AbstractRecommendationServiceRunner<TSyntaxContext>
CancellationToken cancellationToken)
{
_context = context;
_stringComparerForLanguage = _context.GetLanguageService<ISyntaxFactsService>().StringComparer;
_filterOutOfScopeLocals = filterOutOfScopeLocals;
_cancellationToken = cancellationToken;
}
......@@ -151,7 +153,7 @@ private bool TryGetMatchingParameterTypeForArgument(IMethodSymbol method, string
{
if (!string.IsNullOrEmpty(argumentName))
{
parameterType = method.Parameters.FirstOrDefault(p => p.Name == argumentName)?.Type;
parameterType = method.Parameters.FirstOrDefault(p => _stringComparerForLanguage.Equals(p.Name, argumentName))?.Type;
return parameterType != null;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册