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
4912
new
MethodInvocationInfo
116 references to MethodInvocationInfo
Microsoft.CodeAnalysis.CSharp (116)
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)
2208
in
MethodInvocationInfo
methodInvocationInfo,
2217
var
localMethodInvocationInfo = ReplaceWithExtensionImplementationIfNeeded(in methodInvocationInfo);
2226
SafeContext getInvocationEscapeWithOldRules(ref readonly
MethodInvocationInfo
methodInvocationInfo, SafeContext localScopeDepth, bool isRefEscape)
2291
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2335
in
MethodInvocationInfo
methodInvocationInfo,
2363
private static
MethodInvocationInfo
ReplaceWithExtensionImplementationIfNeeded(ref readonly
MethodInvocationInfo
methodInvocationInfo)
2377
var
result = methodInvocationInfo with { MethodInfo = replacedMethodInfo };
2422
in
MethodInvocationInfo
methodInvocationInfo,
2434
var
localMethodInvocationInfo = ReplaceWithExtensionImplementationIfNeeded(in methodInvocationInfo);
2443
bool checkInvocationEscapeWithOldRules(SyntaxNode syntax, ref readonly
MethodInvocationInfo
methodInvocationInfo,
2453
var
receiverlessMethodInvocationInfo = methodInvocationInfo with
2519
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2573
in
MethodInvocationInfo
methodInvocationInfo,
2612
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2788
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2842
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2845
var
localMethodInvocationInfo = ReplaceWithExtensionImplementationIfNeeded(in methodInvocationInfo);
2922
in
MethodInvocationInfo
methodInvocationInfo,
2959
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2964
var
receiverlessInvocationInfo = methodInvocationInfo;
3024
ref readonly
MethodInvocationInfo
methodInvocationInfo,
3029
var
adjustedMethodInvocationInfo = methodInvocationInfo;
3133
ref readonly
MethodInvocationInfo
methodInvocationInfo,
3145
bool checkInvocationArgMixingWithOldRules(SyntaxNode syntax, ref readonly
MethodInvocationInfo
methodInvocationInfo,
3154
var
receiverlessInvocationInfo = methodInvocationInfo;
3229
ref readonly
MethodInvocationInfo
methodInvocationInfo,
3303
private static bool AllParametersConsideredInEscapeAnalysisHaveArguments(ref readonly
MethodInvocationInfo
methodInvocationInfo)
3784
MethodInvocationInfo
.FromCall(call),
3800
MethodInvocationInfo
.FromFunctionPointerInvocation(ptrInvocation),
3811
MethodInvocationInfo
.FromIndexerAccess(indexerAccess),
3827
MethodInvocationInfo
.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver),
3848
MethodInvocationInfo
.FromCall(call, implicitIndexerAccess.Receiver),
3874
MethodInvocationInfo
.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors),
3884
MethodInvocationInfo
.FromProperty(propertyAccess),
4077
MethodInvocationInfo
.FromCall(call),
4097
MethodInvocationInfo
.FromIndexerAccess(indexerAccess),
4122
MethodInvocationInfo
.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver),
4147
MethodInvocationInfo
.FromCall(call, implicitIndexerAccess.Receiver),
4177
MethodInvocationInfo
.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors),
4196
MethodInvocationInfo
.FromFunctionPointerInvocation(functionPointerInvocation),
4215
MethodInvocationInfo
.FromProperty(propertyAccess),
4442
MethodInvocationInfo
.FromCall(call),
4452
MethodInvocationInfo
.FromFunctionPointerInvocation(ptrInvocation),
4462
MethodInvocationInfo
.FromIndexerAccess(indexerAccess),
4478
MethodInvocationInfo
.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver),
4493
MethodInvocationInfo
.FromCall(call, implicitIndexerAccess.Receiver),
4510
MethodInvocationInfo
.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors),
4520
MethodInvocationInfo
.FromProperty(propertyAccess),
4530
MethodInvocationInfo
.FromObjectCreation(objectCreation),
4569
MethodInvocationInfo
.FromUnaryOperator(unaryOperator),
4599
MethodInvocationInfo
.FromInlineArrayConversion(equivalentSignatureMethod, arguments, refKinds, conversion.HasAnyErrors),
4610
MethodInvocationInfo
.FromUserDefinedConversion(operatorMethod, conversion.Operand, conversion.HasAnyErrors),
4641
MethodInvocationInfo
.FromIncrementOperator(increment),
4659
MethodInvocationInfo
.FromCompoundAssignmentOperator(compound),
4678
MethodInvocationInfo
.FromBinaryOperator(binary),
4696
MethodInvocationInfo
.FromUserDefinedConditionalLogicalOperator(uo),
4835
MethodInvocationInfo
.FromCollectionElementInitializer(colElement),
5132
MethodInvocationInfo
.FromCall(call),
5146
MethodInvocationInfo
.FromFunctionPointerInvocation(ptrInvocation),
5160
MethodInvocationInfo
.FromIndexerAccess(indexerAccess),
5180
MethodInvocationInfo
.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver),
5201
MethodInvocationInfo
.FromCall(call, implicitIndexerAccess.Receiver),
5222
MethodInvocationInfo
.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors),
5236
MethodInvocationInfo
.FromProperty(propertyAccess),
5250
MethodInvocationInfo
.FromObjectCreation(objectCreation),
5311
MethodInvocationInfo
.FromUnaryOperator(unary),
5352
MethodInvocationInfo
.FromInlineArrayConversion(equivalentSignatureMethod, arguments, refKinds, conversion.HasAnyErrors),
5367
MethodInvocationInfo
.FromUserDefinedConversion(operatorMethod, conversion.Operand, conversion.HasAnyErrors),
5400
MethodInvocationInfo
.FromIncrementOperator(increment),
5420
MethodInvocationInfo
.FromCompoundAssignmentOperator(compound),
5448
MethodInvocationInfo
.FromBinaryOperator(binary),
5474
MethodInvocationInfo
.FromUserDefinedConditionalLogicalOperator(uo),
5783
MethodInvocationInfo
.FromCollectionElementInitializer(colElement),
5878
MethodInvocationInfo
.FromCall(call),
5921
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 (20)
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);
791
void visitReceiver(BoundCall node, ref readonly
MethodInvocationInfo
methodInvocationInfo)
803
void visitArguments(BoundCall node, ref readonly
MethodInvocationInfo
methodInvocationInfo)
821
private void VisitReceiver(ref readonly
MethodInvocationInfo
methodInvocationInfo)
834
private void VisitArguments(BoundCall node, ref readonly
MethodInvocationInfo
methodInvocationInfo)
952
var
methodInvocationInfo =
MethodInvocationInfo
.FromObjectCreation(node);
1024
var
methodInvocationInfo =
MethodInvocationInfo
.FromIndexerAccess(node);
1049
var
methodInvocationInfo =
MethodInvocationInfo
.FromFunctionPointerInvocation(node);
1129
var
methodInvocationInfo =
MethodInvocationInfo
.FromCall(invocation);
1252
MethodInvocationInfo
.FromInlineArrayConversion(equivalentSignatureMethod, arguments, refKinds, node.HasAnyErrors),