12 instantiations of MemberResolutionResult
Microsoft.CodeAnalysis.CSharp (12)
Binder\Semantics\OverloadResolution\MemberResolutionResult.cs (1)
35
return new
MemberResolutionResult
<TMember>(Member, LeastOverriddenMember, result, HasTypeArgumentInferredFromFunctionType);
Binder\Semantics\OverloadResolution\OverloadResolution.cs (11)
708
results.Add(new
MemberResolutionResult
<MethodSymbol>(constructor, constructor, MemberAnalysisResult.UnsupportedMetadata(), hasTypeArgumentInferredFromFunctionType: false));
730
results.Add(new
MemberResolutionResult
<MethodSymbol>(constructor, constructor, result, hasTypeArgumentInferredFromFunctionType: false));
913
results.Add(new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.UnsupportedMetadata(), hasTypeArgumentInferredFromFunctionType: false));
3292
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.ArgumentParameterMismatch(argumentAnalysis), hasTypeArgumentInferredFromFunctionType: false);
3300
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.UseSiteError(), hasTypeArgumentInferredFromFunctionType: false);
3342
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.ArgumentParameterMismatch(argumentAnalysis), hasTypeArgumentInferredFromFunctionType: false);
3363
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.ArgumentParameterMismatch(argumentAnalysis), hasTypeArgumentInferredFromFunctionType: false);
3370
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.UseSiteError(), hasTypeArgumentInferredFromFunctionType: false);
3471
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, inferenceError, hasTypeArgumentInferredFromFunctionType: false);
3511
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, MemberAnalysisResult.ConstructedParameterFailedConstraintsCheck(i), hasTypeArgumentsInferredFromFunctionType);
3545
return new
MemberResolutionResult
<TMember>(member, leastOverriddenMember, applicableResult, hasTypeArgumentsInferredFromFunctionType);
129 references to MemberResolutionResult
Microsoft.CodeAnalysis.CSharp (127)
Binder\Binder_Attributes.cs (1)
205
out
var
memberResolutionResult,
Binder\Binder_Expressions.cs (7)
3157
MemberResolutionResult
<TMember> methodResult,
3220
void reportUnsafeIfNeeded(
MemberResolutionResult
<TMember> methodResult, BindingDiagnosticBag diagnostics, BoundExpression argument, TypeWithAnnotations parameterTypeWithAnnotations)
4230
MemberResolutionResult
<MethodSymbol> memberResolutionResult;
5701
out
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
6025
out
MemberResolutionResult
<MethodSymbol> memberResolutionResult,
6086
default(
MemberResolutionResult
<MethodSymbol>); // Invalid results are not interesting - we have enough info in candidateConstructors.
8478
MemberResolutionResult
<PropertySymbol> resolutionResult = overloadResolutionResult.ValidResult;
Binder\Binder_Invocation.cs (5)
55
foreach (
var
result in overloadResolutionResult.Results)
727
var
validResult = resolution.OverloadResolutionResult.ValidResult;
822
var
result = overloadResolutionResult.ResultsBuilder[i];
1012
var
methodResult = result.ValidResult;
2054
MemberResolutionResult
<FunctionPointerMethodSymbol> methodResult = overloadResolutionResult.ValidResult;
Binder\Semantics\OverloadResolution\MemberResolutionResult.cs (3)
33
internal
MemberResolutionResult
<TMember> WithResult(MemberAnalysisResult result)
98
internal
MemberResolutionResult
<TMember> Worse()
103
internal
MemberResolutionResult
<TMember> Worst()
Binder\Semantics\OverloadResolution\OverloadResolution.cs (55)
64
private static bool AnyValidResult<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results)
67
foreach (
var
result in results)
78
private static bool SingleValidResult<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results)
82
foreach (
var
result in results)
194
private static bool OverloadResolutionResultIsValid<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, bool hasDynamicArgument)
211
foreach (
var
curResult in results)
229
ArrayBuilder<
MemberResolutionResult
<TMember>> results,
360
ArrayBuilder<
MemberResolutionResult
<TMember>> results,
389
private static void RemoveStaticInstanceMismatches<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, bool requireStatic) where TMember : Symbol
393
var
result = results[f];
402
private static void RemoveMethodsNotDeclaredStatic<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results) where TMember : Symbol
409
var
result = results[f];
418
private void RemoveConstraintViolations<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, CompoundUseSiteInfo<AssemblySymbol> template) where TMember : Symbol
431
var
result = results[f];
445
private void RemoveCallingConventionMismatches<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, in CallingConventionInfo expectedConvention) where TMember : Symbol
467
var
result = results[i];
569
static
MemberResolutionResult
<TMember> makeWrongCallingConvention(
MemberResolutionResult
<TMember> result)
617
ArrayBuilder<
MemberResolutionResult
<TMember>> results,
631
var
result = results[f];
699
private void AddConstructorToCandidateSet(MethodSymbol constructor, ArrayBuilder<
MemberResolutionResult
<MethodSymbol>> results,
817
ArrayBuilder<
MemberResolutionResult
<TMember>> results,
930
var
normalResult = (allowUnexpandedForm || !IsValidParams(leastOverriddenMember))
941
: default(
MemberResolutionResult
<TMember>);
943
var
result = normalResult;
953
var
expandedResult = IsMemberApplicableInExpandedForm(
1141
private void RemoveInaccessibleTypeArguments<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1146
var
result = results[f];
1163
private static void RemoveLessDerivedMembers<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1254
var
result = results[f];
1286
private static bool IsLessDerivedThanAny<TMember>(TypeSymbol type, ArrayBuilder<
MemberResolutionResult
<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1291
var
result = results[f];
1324
private static void RemoveAllInterfaceMembers<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results)
1361
var
result = results[f];
1382
var
result = results[f];
1400
ArrayBuilder<
MemberResolutionResult
<MethodSymbol>> results,
1427
private static void ReportUseSiteInfo<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1430
foreach (
MemberResolutionResult
<TMember> result in results)
1436
private int GetTheBestCandidateIndex<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, AnalyzedArguments arguments, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1496
private void RemoveWorseMembers<TMember>(ArrayBuilder<
MemberResolutionResult
<TMember>> results, AnalyzedArguments arguments, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1552
var
c1Result = results[c1Idx];
1562
var
c2Result = results[c2Idx];
1670
MemberResolutionResult
<TMember> m1,
1671
MemberResolutionResult
<TMember> m2,
1709
MemberResolutionResult
<TMember> m1,
1710
MemberResolutionResult
<TMember> m2,
2118
private static bool RequiredFunctionType<TMember>(
MemberResolutionResult
<TMember> m)
2139
MemberResolutionResult
<TMember> m1,
2141
MemberResolutionResult
<TMember> m2,
2202
private static void GetParameterCounts<TMember>(
MemberResolutionResult
<TMember> m, ArrayBuilder<BoundExpression> arguments, out int declaredParameterCount, out int parametersUsedIncludingExpansionAndOptional) where TMember : Symbol
3264
private
MemberResolutionResult
<TMember> IsMemberApplicableInNormalForm<TMember>(
3329
var
applicableResult = IsApplicable(
3348
private
MemberResolutionResult
<TMember> IsMemberApplicableInExpandedForm<TMember>(
3399
var
result = IsApplicable(
3414
private
MemberResolutionResult
<TMember> IsApplicable<TMember>(
Binder\Semantics\OverloadResolution\OverloadResolutionResult.cs (56)
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)
137
foreach (
var
res in this.ResultsBuilder)
148
private static ThreeState TryGetBestResult(ArrayBuilder<
MemberResolutionResult
<TMember>> allResults, out
MemberResolutionResult
<TMember> best)
150
best = default(
MemberResolutionResult
<TMember>);
153
foreach (
var
pair in allResults)
160
best = default(
MemberResolutionResult
<TMember>);
375
MemberResolutionResult
<TMember> firstSupported = default(
MemberResolutionResult
<TMember>);
376
MemberResolutionResult
<TMember> firstUnsupported = default(
MemberResolutionResult
<TMember>);
378
var supportedInPriorityOrder = new
MemberResolutionResult
<TMember>[7]; // from highest to lowest priority
387
foreach (
MemberResolutionResult
<TMember> result in this.ResultsBuilder)
460
foreach (
var
supported in supportedInPriorityOrder)
559
private static void ReportUnsupportedMetadata(Location location, BindingDiagnosticBag diagnostics, ImmutableArray<Symbol> symbols,
MemberResolutionResult
<TMember> firstUnsupported)
574
private static void ReportWrongCallingConvention(Location location, BindingDiagnosticBag diagnostics, ImmutableArray<Symbol> symbols,
MemberResolutionResult
<TMember> firstSupported, MethodSymbol target)
585
var
bad = GetFirstMemberKind(MemberResolutionKind.UseSiteError);
604
var
inaccessible = GetFirstMemberKind(MemberResolutionKind.InaccessibleTypeArgument);
627
var
staticInstanceMismatch = GetFirstMemberKind(MemberResolutionKind.StaticInstanceMismatch);
678
var
mismatch = GetFirstMemberKind(MemberResolutionKind.WrongRefKind);
699
var
constraintFailure = GetFirstMemberKind(MemberResolutionKind.ConstraintFailure);
725
var
inferenceFailed = GetFirstMemberKind(MemberResolutionKind.TypeInferenceFailed);
769
MemberResolutionResult
<TMember> bad,
789
MemberResolutionResult
<TMember> bad,
808
private static void ReportDuplicateNamedArgument(
MemberResolutionResult
<TMember> result, BindingDiagnosticBag diagnostics, AnalyzedArguments arguments)
820
MemberResolutionResult
<TMember> bad,
857
MemberResolutionResult
<TMember> bad,
1011
var
result = GetFirstMemberKind(MemberResolutionKind.ConstructedParameterFailedConstraintCheck);
1065
var
badArg = GetFirstMemberKind(MemberResolutionKind.BadArgumentConversion);
1120
MemberResolutionResult
<TMember> badArg,
1319
MemberResolutionResult
<TMember> worseResult1;
1320
MemberResolutionResult
<TMember> worseResult2;
1352
private int TryGetFirstTwoWorseResults(out
MemberResolutionResult
<TMember> first, out
MemberResolutionResult
<TMember> second)
1357
first = default(
MemberResolutionResult
<TMember>);
1358
second = default(
MemberResolutionResult
<TMember>);
1360
foreach (
var
res in this.ResultsBuilder)
1383
MemberResolutionResult
<TMember> validResult1;
1384
MemberResolutionResult
<TMember> validResult2;
1404
private int TryGetFirstTwoValidResults(out
MemberResolutionResult
<TMember> first, out
MemberResolutionResult
<TMember> second)
1409
first = default(
MemberResolutionResult
<TMember>);
1410
second = default(
MemberResolutionResult
<TMember>);
1412
foreach (
var
res in this.ResultsBuilder)
1452
foreach (
var
result in this.ResultsBuilder)
1461
private
MemberResolutionResult
<TMember> GetFirstMemberKind(MemberResolutionKind kind)
1463
foreach (
var
result in this.ResultsBuilder)
1471
return default(
MemberResolutionResult
<TMember>);
1497
foreach (
var
result in ResultsBuilder)
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (2)
Semantics\MemberResolutionResultTests.cs (2)
22
var
d = default(
MemberResolutionResult
<MethodSymbol>);