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));
4114
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.ArgumentParameterMismatch(argumentAnalysis), hasTypeArgumentInferredFromFunctionType: false);
4122
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.UseSiteError(), hasTypeArgumentInferredFromFunctionType: false);
4158
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.ArgumentParameterMismatch(argumentAnalysis), hasTypeArgumentInferredFromFunctionType: false);
4184
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.ArgumentParameterMismatch(argumentAnalysis), hasTypeArgumentInferredFromFunctionType: false);
4191
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.UseSiteError(), hasTypeArgumentInferredFromFunctionType: false);
4292
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, inferenceError, hasTypeArgumentInferredFromFunctionType: false);
4335
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.ConstructedParameterFailedConstraintsCheck(i), hasTypeArgumentsInferredFromFunctionType);
4369
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, applicableResult, hasTypeArgumentsInferredFromFunctionType);
126 references to MemberResolutionResult
Microsoft.CodeAnalysis.CSharp (126)
Binder\Binder_Attributes.cs (1)
205
out
var
memberResolutionResult,
Binder\Binder_Expressions.cs (13)
3424
MemberResolutionResult
<TMember> methodResult,
3483
in
MemberResolutionResult
<TMember> methodResult,
3540
in
MemberResolutionResult
<TMember> methodResult,
3572
in
MemberResolutionResult
<TMember> methodResult,
3646
void reportUnsafeIfNeeded(
MemberResolutionResult
<TMember> methodResult, BindingDiagnosticBag diagnostics, BoundExpression argument, TypeWithAnnotations parameterTypeWithAnnotations)
4935
MemberResolutionResult
<MethodSymbol> memberResolutionResult;
4969
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
6749
out
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
6769
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
6853
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
7153
out
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
7203
default(
MemberResolutionResult
<MethodSymbol>); // Invalid results are not interesting - we have enough info in candidateConstructors.
10218
MemberResolutionResult
<PropertySymbol> resolutionResult = overloadResolutionResult.ValidResult;
Binder\Binder_Invocation.cs (13)
55
foreach (
var
result in overloadResolutionResult.Results)
650
var
applicable = overloadResolutionResult.Results.Single(r => r.IsApplicable);
665
private static bool HasApplicableConditionalMethod(ImmutableArray<
MemberResolutionResult
<MethodSymbol>> finalApplicableCandidates)
667
foreach (
var
candidate in finalApplicableCandidates)
678
private void ReportMemberNotSupportedByDynamicDispatch<TMember>(SyntaxNode syntax,
MemberResolutionResult
<TMember> candidate, BindingDiagnosticBag diagnostics)
861
private void ReportDynamicInvocationWarnings(SyntaxNode syntax, BoundMethodGroup methodGroup, BindingDiagnosticBag diagnostics, ImmutableArray<
MemberResolutionResult
<MethodSymbol>> finalApplicableCandidates)
871
private bool IsAmbiguousDynamicParamsArgument<TMethodOrPropertySymbol>(ArrayBuilder<BoundExpression> arguments,
MemberResolutionResult
<TMethodOrPropertySymbol> candidate, out SyntaxNode argumentSyntax)
901
MemberResolutionResult
<MethodSymbol> methodResolutionResult,
957
MemberResolutionResult
<MethodSymbol> methodResolutionResult)
985
private ImmutableArray<
MemberResolutionResult
<TMethodOrPropertySymbol>> GetCandidatesPassingFinalValidation<TMethodOrPropertySymbol>(
995
var finalCandidates = ArrayBuilder<
MemberResolutionResult
<TMethodOrPropertySymbol>>.GetInstance();
1200
var
methodResult = result.ValidResult;
2460
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 (47)
65
private static bool AnyValidResult<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results)
79
private static bool SingleValidResult<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results)
319
private static bool OverloadResolutionResultIsValid<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, bool hasDynamicArgument)
351
ArrayBuilder<
MemberResolutionResult
<TMember>> results,
427
ArrayBuilder<
MemberResolutionResult
<TMember>> results,
479
RemoveLowerPriorityMembers<
MemberResolutionResult
<TMember>, TMember>(results);
493
private static void RemoveHiddenMembers<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results)
580
ArrayBuilder<
MemberResolutionResult
<TMember>> results,
607
private static void RemoveStaticInstanceMismatches<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, bool requireStatic) where TMember : Symbol
625
private static void RemoveMethodsNotDeclaredStatic<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results) where TMember : Symbol
641
private void RemoveConstraintViolations<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, CompoundUseSiteInfo<AssemblySymbol> template) where TMember : Symbol
662
private void RemoveCallingConventionMismatches<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, in CallingConventionInfo expectedConvention) where TMember : Symbol
786
static
MemberResolutionResult
<TMember> makeWrongCallingConvention(
MemberResolutionResult
<TMember> result)
848
ArrayBuilder<
MemberResolutionResult
<TMember>> results,
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)
1277
static bool haveBadArgumentForLastParameter(
MemberResolutionResult
<TMember> result)
1470
private void RemoveInaccessibleTypeArguments<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1496
private static void RemoveLessDerivedMembers<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1619
private static bool IsLessDerivedThanAny<TMember>(int index, TypeSymbol type, ArrayBuilder<
MemberResolutionResult
<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1662
private static void RemoveAllInterfaceMembers<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results)
1738
ArrayBuilder<
MemberResolutionResult
<MethodSymbol>> results,
1768
RemoveLowerPriorityMembers<
MemberResolutionResult
<MethodSymbol>, MethodSymbol>(results);
1780
private static void ReportUseSiteInfo<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1783
foreach (
MemberResolutionResult
<TMember> result in results)
1789
private int GetTheBestCandidateIndex<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, AnalyzedArguments arguments, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1937
private void RemoveWorseMembers<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, AnalyzedArguments arguments, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
2107
MemberResolutionResult
<TMember> m1,
2108
MemberResolutionResult
<TMember> m2,
2146
MemberResolutionResult
<TMember> m1,
2147
MemberResolutionResult
<TMember> m2,
2612
private static bool RequiredFunctionType<TMember>(
MemberResolutionResult
<TMember> m)
2633
MemberResolutionResult
<TMember> m1,
2635
MemberResolutionResult
<TMember> m2,
2697
private static void GetParameterCounts<TMember>(
MemberResolutionResult
<TMember> m, ArrayBuilder<BoundExpression> arguments, out int declaredParameterCount, out int parametersUsedIncludingExpansionAndOptional) where TMember : Symbol
4086
private
MemberResolutionResult
<TMember> IsMemberApplicableInNormalForm<TMember>(
4141
var
applicableResult = IsApplicable(
4164
private
MemberResolutionResult
<TMember> IsMemberApplicableInExpandedForm<TMember>(
4210
var
result = IsApplicable(
4227
private
MemberResolutionResult
<TMember> IsApplicable<TMember>(
Binder\Semantics\OverloadResolution\OverloadResolutionResult.cs (49)
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
148
private static ThreeState TryGetBestResult(ArrayBuilder<
MemberResolutionResult
<TMember>> allResults, out
MemberResolutionResult
<TMember> best)
150
best = default(
MemberResolutionResult
<TMember>);
160
best = default(
MemberResolutionResult
<TMember>);
376
MemberResolutionResult
<TMember> firstSupported = default(
MemberResolutionResult
<TMember>);
377
MemberResolutionResult
<TMember> firstUnsupported = default(
MemberResolutionResult
<TMember>);
379
var supportedInPriorityOrder = new
MemberResolutionResult
<TMember>[7]; // from highest to lowest priority
388
foreach (
MemberResolutionResult
<TMember> result in this.ResultsBuilder)
461
foreach (
var
supported in supportedInPriorityOrder)
580
private static void ReportUnsupportedMetadata(Location location, BindingDiagnosticBag diagnostics, ImmutableArray<Symbol> symbols,
MemberResolutionResult
<TMember> firstUnsupported)
595
private static void ReportWrongCallingConvention(Location location, BindingDiagnosticBag diagnostics, ImmutableArray<Symbol> symbols,
MemberResolutionResult
<TMember> firstSupported, MethodSymbol target)
606
var
bad = GetFirstMemberKind(MemberResolutionKind.UseSiteError);
625
var
inaccessible = GetFirstMemberKind(MemberResolutionKind.InaccessibleTypeArgument);
648
var
staticInstanceMismatch = GetFirstMemberKind(MemberResolutionKind.StaticInstanceMismatch);
699
var
mismatch = GetFirstMemberKind(MemberResolutionKind.WrongRefKind);
720
var
constraintFailure = GetFirstMemberKind(MemberResolutionKind.ConstraintFailure);
746
var
inferenceFailed = GetFirstMemberKind(MemberResolutionKind.TypeInferenceFailed);
790
MemberResolutionResult
<TMember> bad,
810
MemberResolutionResult
<TMember> bad,
829
private static void ReportDuplicateNamedArgument(
MemberResolutionResult
<TMember> result, BindingDiagnosticBag diagnostics, AnalyzedArguments arguments)
841
MemberResolutionResult
<TMember> bad,
878
MemberResolutionResult
<TMember> bad,
1032
var
result = GetFirstMemberKind(MemberResolutionKind.ConstructedParameterFailedConstraintCheck);
1090
var
badArg = GetFirstMemberKind(MemberResolutionKind.BadArgumentConversion);
1155
MemberResolutionResult
<TMember> badArg,
1379
static Symbol unwrapIfParamsCollection(
MemberResolutionResult
<TMember> badArg, ParameterSymbol parameter, bool isLastParameter)
1393
MemberResolutionResult
<TMember> worseResult1;
1394
MemberResolutionResult
<TMember> worseResult2;
1426
private int TryGetFirstTwoWorseResults(out
MemberResolutionResult
<TMember> first, out
MemberResolutionResult
<TMember> second)
1431
first = default(
MemberResolutionResult
<TMember>);
1432
second = default(
MemberResolutionResult
<TMember>);
1457
MemberResolutionResult
<TMember> validResult1;
1458
MemberResolutionResult
<TMember> validResult2;
1478
private int TryGetFirstTwoValidResults(out
MemberResolutionResult
<TMember> first, out
MemberResolutionResult
<TMember> second)
1483
first = default(
MemberResolutionResult
<TMember>);
1484
second = default(
MemberResolutionResult
<TMember>);
1535
private
MemberResolutionResult
<TMember> GetFirstMemberKind(MemberResolutionKind kind)
1545
return default(
MemberResolutionResult
<TMember>);