16 instantiations of MethodInvocationInfo
Microsoft.CodeAnalysis.CSharp (16)
Binder\Binder.ValueChecks.cs (16)
135
=> new
MethodInvocationInfo
148
=> new
MethodInvocationInfo
163
return new
MethodInvocationInfo
177
=> new
MethodInvocationInfo
192
return new
MethodInvocationInfo
208
return new
MethodInvocationInfo
224
return new
MethodInvocationInfo
238
=> new
MethodInvocationInfo
251
=> new
MethodInvocationInfo
264
=> new
MethodInvocationInfo
279
return new
MethodInvocationInfo
296
return new
MethodInvocationInfo
310
=> new
MethodInvocationInfo
323
=> new
MethodInvocationInfo
332
=> new
MethodInvocationInfo
4874
new
MethodInvocationInfo
114 references to MethodInvocationInfo
Microsoft.CodeAnalysis.CSharp (114)
Binder\Binder.ValueChecks.cs (91)
134
public static
MethodInvocationInfo
FromCall(BoundCall call, BoundExpression? substitutedReceiver = null)
147
public static
MethodInvocationInfo
FromCallParts(MethodSymbol method, BoundExpression receiver, ImmutableArray<BoundExpression> args, ThreeState receiverIsSubjectToCloning)
160
public static
MethodInvocationInfo
FromFunctionPointerInvocation(BoundFunctionPointerInvocation ptrInvocation)
176
public static
MethodInvocationInfo
FromIndexerAccess(BoundIndexerAccess indexerAccess, BoundExpression? substitutedReceiver = null)
189
public static
MethodInvocationInfo
FromObjectCreation(BoundObjectCreationExpressionBase objectCreation)
205
public static
MethodInvocationInfo
FromUnaryOperator(BoundUnaryOperator unaryOperator)
221
public static
MethodInvocationInfo
FromBinaryOperator(BoundBinaryOperator binaryOperator)
237
public static
MethodInvocationInfo
FromUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator logicalOperator)
250
public static
MethodInvocationInfo
FromUserDefinedConversion(MethodSymbol operatorMethod, BoundExpression operand, bool hasAnyErrors)
263
public static
MethodInvocationInfo
FromInlineArrayConversion(SignatureOnlyMethodSymbol equivalentSignatureMethod, ImmutableArray<BoundExpression> arguments, ImmutableArray<RefKind> refKinds, bool hasAnyErrors)
276
public static
MethodInvocationInfo
FromIncrementOperator(BoundIncrementOperator incrementOperator)
292
public static
MethodInvocationInfo
FromCompoundAssignmentOperator(BoundCompoundAssignmentOperator compoundOperator)
309
public static
MethodInvocationInfo
FromInlineArrayAccess(SignatureOnlyMethodSymbol equivalentSignatureMethod, ImmutableArray<BoundExpression> arguments, ImmutableArray<RefKind> refKinds, bool hasAnyErrors)
322
public static
MethodInvocationInfo
FromProperty(BoundPropertyAccess propertyAccess)
331
public static
MethodInvocationInfo
FromCollectionElementInitializer(BoundCollectionElementInitializer colElement)
2206
in
MethodInvocationInfo
methodInvocationInfo,
2215
var
localMethodInvocationInfo = ReplaceWithExtensionImplementationIfNeeded(in methodInvocationInfo);
2224
SafeContext getInvocationEscapeWithOldRules(ref readonly
MethodInvocationInfo
methodInvocationInfo, SafeContext localScopeDepth, bool isRefEscape)
2289
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2333
in
MethodInvocationInfo
methodInvocationInfo,
2361
private static
MethodInvocationInfo
ReplaceWithExtensionImplementationIfNeeded(ref readonly
MethodInvocationInfo
methodInvocationInfo)
2375
var
result = methodInvocationInfo with { MethodInfo = replacedMethodInfo };
2420
in
MethodInvocationInfo
methodInvocationInfo,
2432
var
localMethodInvocationInfo = ReplaceWithExtensionImplementationIfNeeded(in methodInvocationInfo);
2441
bool checkInvocationEscapeWithOldRules(SyntaxNode syntax, ref readonly
MethodInvocationInfo
methodInvocationInfo,
2451
var
receiverlessMethodInvocationInfo = methodInvocationInfo with
2517
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2571
in
MethodInvocationInfo
methodInvocationInfo,
2610
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2786
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2840
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2843
var
localMethodInvocationInfo = ReplaceWithExtensionImplementationIfNeeded(in methodInvocationInfo);
2920
in
MethodInvocationInfo
methodInvocationInfo,
2957
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2962
var
receiverlessInvocationInfo = methodInvocationInfo;
3022
ref readonly
MethodInvocationInfo
methodInvocationInfo,
3027
var
adjustedMethodInvocationInfo = methodInvocationInfo;
3125
ref readonly
MethodInvocationInfo
methodInvocationInfo,
3137
bool checkInvocationArgMixingWithOldRules(SyntaxNode syntax, ref readonly
MethodInvocationInfo
methodInvocationInfo,
3146
var
receiverlessInvocationInfo = methodInvocationInfo;
3221
ref readonly
MethodInvocationInfo
methodInvocationInfo,
3295
private static bool AllParametersConsideredInEscapeAnalysisHaveArguments(ref readonly
MethodInvocationInfo
methodInvocationInfo)
3771
MethodInvocationInfo
.FromCall(call),
3787
MethodInvocationInfo
.FromFunctionPointerInvocation(ptrInvocation),
3798
MethodInvocationInfo
.FromIndexerAccess(indexerAccess),
3814
MethodInvocationInfo
.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver),
3830
MethodInvocationInfo
.FromCall(call, implicitIndexerAccess.Receiver),
3856
MethodInvocationInfo
.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors),
3866
MethodInvocationInfo
.FromProperty(propertyAccess),
4054
MethodInvocationInfo
.FromCall(call),
4074
MethodInvocationInfo
.FromIndexerAccess(indexerAccess),
4099
MethodInvocationInfo
.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver),
4119
MethodInvocationInfo
.FromCall(call, implicitIndexerAccess.Receiver),
4149
MethodInvocationInfo
.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors),
4168
MethodInvocationInfo
.FromFunctionPointerInvocation(functionPointerInvocation),
4187
MethodInvocationInfo
.FromProperty(propertyAccess),
4409
MethodInvocationInfo
.FromCall(call),
4419
MethodInvocationInfo
.FromFunctionPointerInvocation(ptrInvocation),
4429
MethodInvocationInfo
.FromIndexerAccess(indexerAccess),
4445
MethodInvocationInfo
.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver),
4455
MethodInvocationInfo
.FromCall(call, implicitIndexerAccess.Receiver),
4472
MethodInvocationInfo
.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors),
4482
MethodInvocationInfo
.FromProperty(propertyAccess),
4492
MethodInvocationInfo
.FromObjectCreation(objectCreation),
4531
MethodInvocationInfo
.FromUnaryOperator(unaryOperator),
4561
MethodInvocationInfo
.FromInlineArrayConversion(equivalentSignatureMethod, arguments, refKinds, conversion.HasAnyErrors),
4572
MethodInvocationInfo
.FromUserDefinedConversion(operatorMethod, conversion.Operand, conversion.HasAnyErrors),
4603
MethodInvocationInfo
.FromIncrementOperator(increment),
4621
MethodInvocationInfo
.FromCompoundAssignmentOperator(compound),
4640
MethodInvocationInfo
.FromBinaryOperator(binary),
4658
MethodInvocationInfo
.FromUserDefinedConditionalLogicalOperator(uo),
4797
MethodInvocationInfo
.FromCollectionElementInitializer(colElement),
5089
MethodInvocationInfo
.FromCall(call),
5103
MethodInvocationInfo
.FromFunctionPointerInvocation(ptrInvocation),
5117
MethodInvocationInfo
.FromIndexerAccess(indexerAccess),
5137
MethodInvocationInfo
.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver),
5153
MethodInvocationInfo
.FromCall(call, implicitIndexerAccess.Receiver),
5174
MethodInvocationInfo
.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors),
5188
MethodInvocationInfo
.FromProperty(propertyAccess),
5202
MethodInvocationInfo
.FromObjectCreation(objectCreation),
5263
MethodInvocationInfo
.FromUnaryOperator(unary),
5304
MethodInvocationInfo
.FromInlineArrayConversion(equivalentSignatureMethod, arguments, refKinds, conversion.HasAnyErrors),
5319
MethodInvocationInfo
.FromUserDefinedConversion(operatorMethod, conversion.Operand, conversion.HasAnyErrors),
5352
MethodInvocationInfo
.FromIncrementOperator(increment),
5372
MethodInvocationInfo
.FromCompoundAssignmentOperator(compound),
5400
MethodInvocationInfo
.FromBinaryOperator(binary),
5426
MethodInvocationInfo
.FromUserDefinedConditionalLogicalOperator(uo),
5735
MethodInvocationInfo
.FromCollectionElementInitializer(colElement),
5830
MethodInvocationInfo
.FromCall(call),
5873
MethodInvocationInfo
.FromCall(call),
Binder\Binder_Statements.cs (5)
1611
var
methodInvocationInfo =
MethodInvocationInfo
.FromCallParts(propSet, receiver, args: [op2], receiverIsSubjectToCloning: ThreeState.Unknown);
1615
methodInvocationInfo =
MethodInvocationInfo
.FromIndexerAccess(indexer);
1648
void handleExtensionSetter(ref readonly
MethodInvocationInfo
methodInvocationInfo)
1651
var
localMethodInvocationInfo = ReplaceWithExtensionImplementationIfNeeded(in methodInvocationInfo);
Binder\RefSafetyAnalysis.cs (18)
595
var
methodInvocationInfo =
MethodInvocationInfo
.FromCompoundAssignmentOperator(node);
741
MethodInvocationInfo
methodInvocationInfo = getInvocationInfo(node);
744
var calls = ArrayBuilder<(BoundCall call,
MethodInvocationInfo
methodInvocationInfo)>.GetInstance();
779
static
MethodInvocationInfo
getInvocationInfo(BoundCall node)
781
var
methodInvocationInfo =
MethodInvocationInfo
.FromCall(node);
792
private void VisitReceiver(ref readonly
MethodInvocationInfo
methodInvocationInfo)
805
private void VisitArguments(BoundCall node, ref readonly
MethodInvocationInfo
methodInvocationInfo)
923
var
methodInvocationInfo =
MethodInvocationInfo
.FromObjectCreation(node);
995
var
methodInvocationInfo =
MethodInvocationInfo
.FromIndexerAccess(node);
1020
var
methodInvocationInfo =
MethodInvocationInfo
.FromFunctionPointerInvocation(node);
1100
var
methodInvocationInfo =
MethodInvocationInfo
.FromCall(invocation);
1212
MethodInvocationInfo
.FromInlineArrayConversion(equivalentSignatureMethod, arguments, refKinds, node.HasAnyErrors),