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));
4135
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.ArgumentParameterMismatch(argumentAnalysis), hasTypeArgumentInferredFromFunctionType: false);
4143
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.UseSiteError(), hasTypeArgumentInferredFromFunctionType: false);
4179
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.ArgumentParameterMismatch(argumentAnalysis), hasTypeArgumentInferredFromFunctionType: false);
4205
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.ArgumentParameterMismatch(argumentAnalysis), hasTypeArgumentInferredFromFunctionType: false);
4212
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.UseSiteError(), hasTypeArgumentInferredFromFunctionType: false);
4313
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, inferenceError, hasTypeArgumentInferredFromFunctionType: false);
4356
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.ConstructedParameterFailedConstraintsCheck(i), hasTypeArgumentsInferredFromFunctionType);
4391
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, applicableResult, hasTypeArgumentsInferredFromFunctionType);
164 references to MemberResolutionResult
Microsoft.CodeAnalysis.CSharp (162)
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 (5)
1253
out
var
memberResolutionResult,
1660
out
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
1694
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
1981
ImmutableArray<
MemberResolutionResult
<MethodSymbol>> finalApplicableCandidates, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1986
foreach (
var
candidate in finalApplicableCandidates)
Binder\Binder_Expressions.cs (15)
3499
MemberResolutionResult
<TMember> methodResult,
3558
in
MemberResolutionResult
<TMember> methodResult,
3615
in
MemberResolutionResult
<TMember> methodResult,
3647
in
MemberResolutionResult
<TMember> methodResult,
3721
void reportUnsafeIfNeeded(
MemberResolutionResult
<TMember> methodResult, BindingDiagnosticBag diagnostics, BoundExpression argument, TypeWithAnnotations parameterTypeWithAnnotations)
3743
in
MemberResolutionResult
<TMember> methodResult,
5023
MemberResolutionResult
<MethodSymbol> memberResolutionResult;
5057
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
6917
out
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
6937
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
7022
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
7322
out
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
7363
out
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
7406
default(
MemberResolutionResult
<MethodSymbol>); // Invalid results are not interesting - we have enough info in candidateConstructors.
10463
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;
2578
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)
1477
private void RemoveInaccessibleTypeArguments<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1482
var
result = results[f];
1503
private static void RemoveLessDerivedMembers<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1594
var
result = results[f];
1626
private static bool IsLessDerivedThanAny<TMember>(int index, TypeSymbol type, ArrayBuilder<
MemberResolutionResult
<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1636
var
result = results[f];
1669
private static void RemoveAllInterfaceMembers<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results)
1706
var
result = results[f];
1727
var
result = results[f];
1745
ArrayBuilder<
MemberResolutionResult
<MethodSymbol>> results,
1775
RemoveLowerPriorityMembers<
MemberResolutionResult
<MethodSymbol>, MethodSymbol>(results);
1787
private static void ReportUseSiteInfo<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1790
foreach (
MemberResolutionResult
<TMember> result in results)
1796
private int GetTheBestCandidateIndex<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, AnalyzedArguments arguments, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1948
private void RemoveWorseMembers<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, AnalyzedArguments arguments, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
2004
var
c1Result = results[c1Idx];
2014
var
c2Result = results[c2Idx];
2096
MemberResolutionResult
<TMember> m1,
2097
MemberResolutionResult
<TMember> m2,
2135
MemberResolutionResult
<TMember> m1,
2136
MemberResolutionResult
<TMember> m2,
2616
MemberResolutionResult
<TMember> m1,
2618
MemberResolutionResult
<TMember> m2,
2697
private static bool RequiredFunctionType<TMember>(
MemberResolutionResult
<TMember> m)
2718
private static void GetParameterCounts<TMember>(
MemberResolutionResult
<TMember> m, ArrayBuilder<BoundExpression> arguments, out int declaredParameterCount, out int parametersUsedIncludingExpansionAndOptional) where TMember : Symbol
4107
private
MemberResolutionResult
<TMember> IsMemberApplicableInNormalForm<TMember>(
4162
var
applicableResult = IsApplicable(
4185
private
MemberResolutionResult
<TMember> IsMemberApplicableInExpandedForm<TMember>(
4231
var
result = IsApplicable(
4248
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)
603
private static void ReportUnsupportedMetadata(Location location, BindingDiagnosticBag diagnostics, ImmutableArray<Symbol> symbols,
MemberResolutionResult
<TMember> firstUnsupported)
618
private static void ReportWrongCallingConvention(Location location, BindingDiagnosticBag diagnostics, ImmutableArray<Symbol> symbols,
MemberResolutionResult
<TMember> firstSupported, MethodSymbol target)
629
var
bad = GetFirstMemberKind(MemberResolutionKind.UseSiteError);
648
var
inaccessible = GetFirstMemberKind(MemberResolutionKind.InaccessibleTypeArgument);
671
var
staticInstanceMismatch = GetFirstMemberKind(MemberResolutionKind.StaticInstanceMismatch);
722
var
mismatch = GetFirstMemberKind(MemberResolutionKind.WrongRefKind);
743
var
constraintFailure = GetFirstMemberKind(MemberResolutionKind.ConstraintFailure);
769
var
inferenceFailed = GetFirstMemberKind(MemberResolutionKind.TypeInferenceFailed);
825
MemberResolutionResult
<TMember> bad,
845
MemberResolutionResult
<TMember> bad,
864
private static void ReportDuplicateNamedArgument(
MemberResolutionResult
<TMember> result, BindingDiagnosticBag diagnostics, AnalyzedArguments arguments)
876
MemberResolutionResult
<TMember> bad,
913
MemberResolutionResult
<TMember> bad,
1071
var
result = GetFirstMemberKind(MemberResolutionKind.ConstructedParameterFailedConstraintCheck);
1129
var
badArg = GetFirstMemberKind(MemberResolutionKind.BadArgumentConversion);
1194
MemberResolutionResult
<TMember> badArg,
1418
static Symbol unwrapIfParamsCollection(
MemberResolutionResult
<TMember> badArg, ParameterSymbol parameter, bool isLastParameter)
1432
MemberResolutionResult
<TMember> worseResult1;
1433
MemberResolutionResult
<TMember> worseResult2;
1467
private int TryGetFirstTwoWorseResults(out
MemberResolutionResult
<TMember> first, out
MemberResolutionResult
<TMember> second)
1472
first = default(
MemberResolutionResult
<TMember>);
1473
second = default(
MemberResolutionResult
<TMember>);
1475
foreach (
var
res in this.ResultsBuilder)
1498
MemberResolutionResult
<TMember> validResult1;
1499
MemberResolutionResult
<TMember> validResult2;
1523
private int TryGetFirstTwoValidResults(out
MemberResolutionResult
<TMember> first, out
MemberResolutionResult
<TMember> second)
1528
first = default(
MemberResolutionResult
<TMember>);
1529
second = default(
MemberResolutionResult
<TMember>);
1531
foreach (
var
res in this.ResultsBuilder)
1564
foreach (
var
result in this.ResultsBuilder)
1573
private
MemberResolutionResult
<TMember> GetFirstMemberKind(MemberResolutionKind kind)
1575
foreach (
var
result in this.ResultsBuilder)
1583
return default(
MemberResolutionResult
<TMember>);
1609
foreach (
var
result in ResultsBuilder)
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (2)
Semantics\MemberResolutionResultTests.cs (2)
22
var
d = default(
MemberResolutionResult
<MethodSymbol>);