12 instantiations of MemberResolutionResult
Microsoft.CodeAnalysis.CSharp (12)
Binder\Semantics\OverloadResolution\MemberResolutionResult.cs (1)
36
return new
MemberResolutionResult
<TMember>(Member, LeastOverriddenMember, result, HasTypeArgumentInferredFromFunctionType);
Binder\Semantics\OverloadResolution\OverloadResolution.cs (11)
939
results.Add(new
MemberResolutionResult
<MethodSymbol>(constructor, constructor, MemberAnalysisResult.UnsupportedMetadata(), hasTypeArgumentInferredFromFunctionType: false));
961
results.Add(new
MemberResolutionResult
<MethodSymbol>(constructor, constructor, result, hasTypeArgumentInferredFromFunctionType: false));
1158
results.Add(new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.UnsupportedMetadata(), hasTypeArgumentInferredFromFunctionType: false));
4134
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.ArgumentParameterMismatch(argumentAnalysis), hasTypeArgumentInferredFromFunctionType: false);
4142
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.UseSiteError(), hasTypeArgumentInferredFromFunctionType: false);
4178
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.ArgumentParameterMismatch(argumentAnalysis), hasTypeArgumentInferredFromFunctionType: false);
4204
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.ArgumentParameterMismatch(argumentAnalysis), hasTypeArgumentInferredFromFunctionType: false);
4211
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.UseSiteError(), hasTypeArgumentInferredFromFunctionType: false);
4312
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, inferenceError, hasTypeArgumentInferredFromFunctionType: false);
4355
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.ConstructedParameterFailedConstraintsCheck(i), hasTypeArgumentsInferredFromFunctionType);
4390
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, applicableResult, hasTypeArgumentsInferredFromFunctionType);
162 references to MemberResolutionResult
Microsoft.CodeAnalysis.CSharp (160)
Binder\Binder.OperatorResolutionForReporting.cs (2)
172
foreach (
var
res in r1.ResultsBuilder)
287
foreach (
var
res in result1.ResultsBuilder)
Binder\Binder_Attributes.cs (1)
205
out
var
memberResolutionResult,
Binder\Binder_Conversions.cs (4)
1149
out
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
1183
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
1467
ImmutableArray<
MemberResolutionResult
<MethodSymbol>> finalApplicableCandidates, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1472
foreach (
var
candidate in finalApplicableCandidates)
Binder\Binder_Expressions.cs (14)
3489
MemberResolutionResult
<TMember> methodResult,
3548
in
MemberResolutionResult
<TMember> methodResult,
3605
in
MemberResolutionResult
<TMember> methodResult,
3637
in
MemberResolutionResult
<TMember> methodResult,
3711
void reportUnsafeIfNeeded(
MemberResolutionResult
<TMember> methodResult, BindingDiagnosticBag diagnostics, BoundExpression argument, TypeWithAnnotations parameterTypeWithAnnotations)
3733
in
MemberResolutionResult
<TMember> methodResult,
5009
MemberResolutionResult
<MethodSymbol> memberResolutionResult;
5043
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
6829
out
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
6849
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
6934
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
7234
out
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
7284
default(
MemberResolutionResult
<MethodSymbol>); // Invalid results are not interesting - we have enough info in candidateConstructors.
10336
MemberResolutionResult
<PropertySymbol> resolutionResult = overloadResolutionResult.ValidResult;
Binder\Binder_Invocation.cs (14)
56
foreach (
var
result in overloadResolutionResult.Results)
658
var
applicable = overloadResolutionResult.Results.Single(r => r.IsApplicable);
673
private static bool HasApplicableConditionalMethod(ImmutableArray<
MemberResolutionResult
<MethodSymbol>> finalApplicableCandidates)
675
foreach (
var
candidate in finalApplicableCandidates)
686
private void ReportMemberNotSupportedByDynamicDispatch<TMember>(SyntaxNode syntax,
MemberResolutionResult
<TMember> candidate, BindingDiagnosticBag diagnostics)
885
private void ReportDynamicInvocationWarnings(SyntaxNode syntax, BoundMethodGroup methodGroup, BindingDiagnosticBag diagnostics, ImmutableArray<
MemberResolutionResult
<MethodSymbol>> finalApplicableCandidates)
895
private bool IsAmbiguousDynamicParamsArgument<TMethodOrPropertySymbol>(ArrayBuilder<BoundExpression> arguments,
MemberResolutionResult
<TMethodOrPropertySymbol> candidate, out SyntaxNode argumentSyntax)
925
MemberResolutionResult
<MethodSymbol> methodResolutionResult,
981
MemberResolutionResult
<MethodSymbol> methodResolutionResult)
1009
private ImmutableArray<
MemberResolutionResult
<TMethodOrPropertySymbol>> GetCandidatesPassingFinalValidation<TMethodOrPropertySymbol>(
1019
var finalCandidates = ArrayBuilder<
MemberResolutionResult
<TMethodOrPropertySymbol>>.GetInstance();
1025
var
result = overloadResolutionResult.ResultsBuilder[i];
1209
var
methodResult = result.ValidResult;
2569
MemberResolutionResult
<FunctionPointerMethodSymbol> methodResult = overloadResolutionResult.ValidResult;
Binder\Semantics\OverloadResolution\MemberResolutionResult.cs (3)
34
internal
MemberResolutionResult
<TMember> WithResult(MemberAnalysisResult result)
99
internal
MemberResolutionResult
<TMember> Worse()
104
internal
MemberResolutionResult
<TMember> Worst()
Binder\Semantics\OverloadResolution\OverloadResolution.cs (65)
65
private static bool AnyValidResult<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results)
68
foreach (
var
result in results)
79
private static bool SingleValidResult<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results)
83
foreach (
var
result in results)
296
foreach (
var
res in results)
320
private static bool OverloadResolutionResultIsValid<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, bool hasDynamicArgument)
337
foreach (
var
curResult in results)
352
ArrayBuilder<
MemberResolutionResult
<TMember>> results,
428
ArrayBuilder<
MemberResolutionResult
<TMember>> results,
480
RemoveLowerPriorityMembers<
MemberResolutionResult
<TMember>, TMember>(results);
494
private static void RemoveHiddenMembers<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results)
501
var
result = results[f];
524
var
result = results[f];
581
ArrayBuilder<
MemberResolutionResult
<TMember>> results,
608
private static void RemoveStaticInstanceMismatches<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, bool requireStatic) where TMember : Symbol
612
var
result = results[f];
626
private static void RemoveMethodsNotDeclaredStatic<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results) where TMember : Symbol
633
var
result = results[f];
642
private void RemoveConstraintViolations<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, CompoundUseSiteInfo<AssemblySymbol> template) where TMember : Symbol
649
var
result = results[f];
663
private void RemoveCallingConventionMismatches<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, in CallingConventionInfo expectedConvention) where TMember : Symbol
685
var
result = results[i];
787
static
MemberResolutionResult
<TMember> makeWrongCallingConvention(
MemberResolutionResult
<TMember> result)
848
ArrayBuilder<
MemberResolutionResult
<TMember>> results,
862
var
result = results[f];
930
private void AddConstructorToCandidateSet(MethodSymbol constructor, ArrayBuilder<
MemberResolutionResult
<MethodSymbol>> results,
1058
ArrayBuilder<
MemberResolutionResult
<TMember>> results,
1176
var
normalResult = skipNormalResult
1177
? default(
MemberResolutionResult
<TMember>)
1187
var
result = normalResult;
1197
var
expandedResult = IsMemberApplicableInExpandedForm(
1234
private static bool PreferExpandedFormOverNormalForm<TMember>(
MemberResolutionResult
<TMember> normalResult,
MemberResolutionResult
<TMember> expandedResult)
1283
static bool haveBadArgumentForLastParameter(
MemberResolutionResult
<TMember> result)
1476
private void RemoveInaccessibleTypeArguments<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1481
var
result = results[f];
1502
private static void RemoveLessDerivedMembers<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1593
var
result = results[f];
1625
private static bool IsLessDerivedThanAny<TMember>(int index, TypeSymbol type, ArrayBuilder<
MemberResolutionResult
<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1635
var
result = results[f];
1668
private static void RemoveAllInterfaceMembers<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results)
1705
var
result = results[f];
1726
var
result = results[f];
1744
ArrayBuilder<
MemberResolutionResult
<MethodSymbol>> results,
1774
RemoveLowerPriorityMembers<
MemberResolutionResult
<MethodSymbol>, MethodSymbol>(results);
1786
private static void ReportUseSiteInfo<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1789
foreach (
MemberResolutionResult
<TMember> result in results)
1795
private int GetTheBestCandidateIndex<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, AnalyzedArguments arguments, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1947
private void RemoveWorseMembers<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, AnalyzedArguments arguments, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
2003
var
c1Result = results[c1Idx];
2013
var
c2Result = results[c2Idx];
2095
MemberResolutionResult
<TMember> m1,
2096
MemberResolutionResult
<TMember> m2,
2134
MemberResolutionResult
<TMember> m1,
2135
MemberResolutionResult
<TMember> m2,
2615
MemberResolutionResult
<TMember> m1,
2617
MemberResolutionResult
<TMember> m2,
2696
private static bool RequiredFunctionType<TMember>(
MemberResolutionResult
<TMember> m)
2717
private static void GetParameterCounts<TMember>(
MemberResolutionResult
<TMember> m, ArrayBuilder<BoundExpression> arguments, out int declaredParameterCount, out int parametersUsedIncludingExpansionAndOptional) where TMember : Symbol
4106
private
MemberResolutionResult
<TMember> IsMemberApplicableInNormalForm<TMember>(
4161
var
applicableResult = IsApplicable(
4184
private
MemberResolutionResult
<TMember> IsMemberApplicableInExpandedForm<TMember>(
4230
var
result = IsApplicable(
4247
private
MemberResolutionResult
<TMember> IsApplicable<TMember>(
Binder\Semantics\OverloadResolution\OverloadResolutionResult.cs (57)
28
private
MemberResolutionResult
<TMember> _bestResult;
30
internal readonly ArrayBuilder<
MemberResolutionResult
<TMember>> ResultsBuilder;
35
this.ResultsBuilder = new ArrayBuilder<
MemberResolutionResult
<TMember>>();
40
_bestResult = default(
MemberResolutionResult
<TMember>);
62
public
MemberResolutionResult
<TMember> ValidResult
87
public
MemberResolutionResult
<TMember> BestResult
102
public ImmutableArray<
MemberResolutionResult
<TMember>> Results
119
foreach (
var
res in this.ResultsBuilder)
154
foreach (
var
res in this.ResultsBuilder)
165
private static ThreeState TryGetBestResult(ArrayBuilder<
MemberResolutionResult
<TMember>> allResults, out
MemberResolutionResult
<TMember> best)
167
best = default(
MemberResolutionResult
<TMember>);
170
foreach (
var
pair in allResults)
177
best = default(
MemberResolutionResult
<TMember>);
394
MemberResolutionResult
<TMember> firstSupported = default(
MemberResolutionResult
<TMember>);
395
MemberResolutionResult
<TMember> firstUnsupported = default(
MemberResolutionResult
<TMember>);
397
var supportedInPriorityOrder = new
MemberResolutionResult
<TMember>[7]; // from highest to lowest priority
406
foreach (
MemberResolutionResult
<TMember> result in this.ResultsBuilder)
479
foreach (
var
supported in supportedInPriorityOrder)
598
private static void ReportUnsupportedMetadata(Location location, BindingDiagnosticBag diagnostics, ImmutableArray<Symbol> symbols,
MemberResolutionResult
<TMember> firstUnsupported)
613
private static void ReportWrongCallingConvention(Location location, BindingDiagnosticBag diagnostics, ImmutableArray<Symbol> symbols,
MemberResolutionResult
<TMember> firstSupported, MethodSymbol target)
624
var
bad = GetFirstMemberKind(MemberResolutionKind.UseSiteError);
643
var
inaccessible = GetFirstMemberKind(MemberResolutionKind.InaccessibleTypeArgument);
666
var
staticInstanceMismatch = GetFirstMemberKind(MemberResolutionKind.StaticInstanceMismatch);
717
var
mismatch = GetFirstMemberKind(MemberResolutionKind.WrongRefKind);
738
var
constraintFailure = GetFirstMemberKind(MemberResolutionKind.ConstraintFailure);
764
var
inferenceFailed = GetFirstMemberKind(MemberResolutionKind.TypeInferenceFailed);
820
MemberResolutionResult
<TMember> bad,
840
MemberResolutionResult
<TMember> bad,
859
private static void ReportDuplicateNamedArgument(
MemberResolutionResult
<TMember> result, BindingDiagnosticBag diagnostics, AnalyzedArguments arguments)
871
MemberResolutionResult
<TMember> bad,
908
MemberResolutionResult
<TMember> bad,
1062
var
result = GetFirstMemberKind(MemberResolutionKind.ConstructedParameterFailedConstraintCheck);
1120
var
badArg = GetFirstMemberKind(MemberResolutionKind.BadArgumentConversion);
1185
MemberResolutionResult
<TMember> badArg,
1409
static Symbol unwrapIfParamsCollection(
MemberResolutionResult
<TMember> badArg, ParameterSymbol parameter, bool isLastParameter)
1423
MemberResolutionResult
<TMember> worseResult1;
1424
MemberResolutionResult
<TMember> worseResult2;
1458
private int TryGetFirstTwoWorseResults(out
MemberResolutionResult
<TMember> first, out
MemberResolutionResult
<TMember> second)
1463
first = default(
MemberResolutionResult
<TMember>);
1464
second = default(
MemberResolutionResult
<TMember>);
1466
foreach (
var
res in this.ResultsBuilder)
1489
MemberResolutionResult
<TMember> validResult1;
1490
MemberResolutionResult
<TMember> validResult2;
1514
private int TryGetFirstTwoValidResults(out
MemberResolutionResult
<TMember> first, out
MemberResolutionResult
<TMember> second)
1519
first = default(
MemberResolutionResult
<TMember>);
1520
second = default(
MemberResolutionResult
<TMember>);
1522
foreach (
var
res in this.ResultsBuilder)
1555
foreach (
var
result in this.ResultsBuilder)
1564
private
MemberResolutionResult
<TMember> GetFirstMemberKind(MemberResolutionKind kind)
1566
foreach (
var
result in this.ResultsBuilder)
1574
return default(
MemberResolutionResult
<TMember>);
1600
foreach (
var
result in ResultsBuilder)
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (2)
Semantics\MemberResolutionResultTests.cs (2)
22
var
d = default(
MemberResolutionResult
<MethodSymbol>);