1 instantiation of OverloadResolution
Microsoft.CodeAnalysis.CSharp (1)
Binder\Binder.cs (1)
522
Interlocked.CompareExchange(ref _lazyOverloadResolution, new
OverloadResolution
(this), null);
61 references to OverloadResolution
Microsoft.CodeAnalysis.CSharp (61)
Binder\Binder.cs (2)
515
private
OverloadResolution
? _lazyOverloadResolution;
516
internal
OverloadResolution
OverloadResolution
Binder\Binder.ValueChecks.cs (1)
622
var resolution = this.ResolveMethodGroup(methodGroup, analyzedArguments: null, useSiteInfo: ref useSiteInfo, options:
OverloadResolution
.Options.None);
Binder\Binder_Expressions.cs (29)
7962
var resolution = this.ResolveMethodGroup(methodGroup, analyzedArguments: null, useSiteInfo: ref useSiteInfo, options:
OverloadResolution
.Options.None);
8009
syntax, name, analyzedArguments: null, receiver, typeArgumentsOpt, options:
OverloadResolution
.Options.None,
8509
OverloadResolution
.Options options,
8518
Debug.Assert((options & ~(
OverloadResolution
.Options.IsMethodGroupConversion |
8519
OverloadResolution
.Options.IsFunctionPointerResolution |
8520
OverloadResolution
.Options.InferWithDynamic |
8521
OverloadResolution
.Options.IgnoreNormalFormIfHasValidParamsParameter |
8522
OverloadResolution
.Options.DisallowExpandedNonArrayParams |
8523
OverloadResolution
.Options.DynamicResolution |
8524
OverloadResolution
.Options.DynamicConvertsToAnything)) == 0);
8542
options |=
OverloadResolution
.Options.AllowRefOmittedArguments;
8599
OverloadResolution
.Options options,
8703
OverloadResolution
.Options options,
8767
options: options |
OverloadResolution
.Options.IsExtensionMethodResolution,
10621
OverloadResolution
.Options options,
10626
Debug.Assert((options & ~(
OverloadResolution
.Options.IsMethodGroupConversion |
10627
OverloadResolution
.Options.IsFunctionPointerResolution |
10628
OverloadResolution
.Options.InferWithDynamic)) == 0);
10644
OverloadResolution
.Options options,
10676
OverloadResolution
.Options options,
10748
OverloadResolution
.Options options,
10753
Debug.Assert((options & ~(
OverloadResolution
.Options.IsMethodGroupConversion |
10754
OverloadResolution
.Options.IsFunctionPointerResolution |
10755
OverloadResolution
.Options.InferWithDynamic |
10756
OverloadResolution
.Options.IgnoreNormalFormIfHasValidParamsParameter |
10757
OverloadResolution
.Options.DisallowExpandedNonArrayParams |
10758
OverloadResolution
.Options.DynamicResolution |
10759
OverloadResolution
.Options.DynamicConvertsToAnything)) == 0);
10805
options |=
OverloadResolution
.Options.AllowRefOmittedArguments;
Binder\Binder_Invocation.cs (10)
643
options: analyzedArguments.HasDynamicArgument ?
OverloadResolution
.Options.DynamicResolution :
OverloadResolution
.Options.None);
716
options: (ignoreNormalFormIfHasValidParamsParameter ?
OverloadResolution
.Options.IgnoreNormalFormIfHasValidParamsParameter :
OverloadResolution
.Options.None) |
717
(disallowExpandedNonArrayParams ?
OverloadResolution
.Options.DisallowExpandedNonArrayParams :
OverloadResolution
.Options.None) |
718
(analyzedArguments.HasDynamicArgument ?
OverloadResolution
.Options.DynamicResolution :
OverloadResolution
.Options.None),
874
if (
OverloadResolution
.IsValidParams(this, candidate.LeastOverriddenMember, disallowExpandedNonArrayParams: false, out _) &&
2321
var resolution = ResolveMethodGroup(methodGroup, analyzedArguments: null, useSiteInfo: ref useSiteInfo, options:
OverloadResolution
.Options.None);
Binder\Binder_Statements.cs (1)
2158
if (!
OverloadResolution
.AreRefsCompatibleForMethodConversion(
Binder\ForEachLoopBinder.cs (2)
1460
options:
OverloadResolution
.Options.None);
1534
options:
OverloadResolution
.Options.None,
Binder\Semantics\Conversions\Conversions.cs (6)
259
options:
OverloadResolution
.Options.InferWithDynamic |
OverloadResolution
.Options.IsMethodGroupConversion |
260
(isFunctionPointer ?
OverloadResolution
.Options.IsFunctionPointerResolution :
OverloadResolution
.Options.None),
267
resolution = binder.ResolveMethodGroup(source, analyzedArguments: null, ref useSiteInfo, options:
OverloadResolution
.Options.IsMethodGroupConversion);
411
options:
OverloadResolution
.Options.IsMethodGroupConversion,
Binder\Semantics\Conversions\ConversionsBase.cs (1)
1512
if (!
OverloadResolution
.AreRefsCompatibleForMethodConversion(
Binder\Semantics\OverloadResolution\IMemberResolutionResultWithPriority.cs (1)
8
/// Abstraction for use in <see cref="
OverloadResolution
.RemoveLowerPriorityMembers{TMemberResolution, TMember}(PooledObjects.ArrayBuilder{TMemberResolution})"/>,
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (3)
1513
options:
OverloadResolution
.Options.IsMethodGroupConversion |
1514
(isFunctionPointerResolution ?
OverloadResolution
.Options.IsFunctionPointerResolution :
OverloadResolution
.Options.None),
BoundTree\UnboundLambda.cs (1)
788
hasParams:
OverloadResolution
.IsValidParams(Binder, lambdaSymbol, disallowExpandedNonArrayParams: false, out _),
Compilation\CSharpCompilation.cs (2)
4292
var easyOutBinaryKind =
OverloadResolution
.BinopEasyOut.OpKind(binaryKind, csharpLeftType, csharpRightType);
4515
var easyOutUnaryKind =
OverloadResolution
.UnopEasyOut.OpKind(unaryKind, csharpOperandType);
FlowAnalysis\NullableWalker.cs (2)
7966
OverloadResolution
.TryInferParamsCollectionIterationType(_binder, type.Type, out paramsIterationType);
7996
OverloadResolution
.GetEffectiveParameterTypes(