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
4910
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)
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;
3131
ref readonly
MethodInvocationInfo
methodInvocationInfo,
3143
bool checkInvocationArgMixingWithOldRules(SyntaxNode syntax, ref readonly
MethodInvocationInfo
methodInvocationInfo,
3152
var
receiverlessInvocationInfo = methodInvocationInfo;
3227
ref readonly
MethodInvocationInfo
methodInvocationInfo,
3301
private static bool AllParametersConsideredInEscapeAnalysisHaveArguments(ref readonly
MethodInvocationInfo
methodInvocationInfo)
3782
MethodInvocationInfo
.FromCall(call),
3798
MethodInvocationInfo
.FromFunctionPointerInvocation(ptrInvocation),
3809
MethodInvocationInfo
.FromIndexerAccess(indexerAccess),
3825
MethodInvocationInfo
.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver),
3846
MethodInvocationInfo
.FromCall(call, implicitIndexerAccess.Receiver),
3872
MethodInvocationInfo
.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors),
3882
MethodInvocationInfo
.FromProperty(propertyAccess),
4075
MethodInvocationInfo
.FromCall(call),
4095
MethodInvocationInfo
.FromIndexerAccess(indexerAccess),
4120
MethodInvocationInfo
.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver),
4145
MethodInvocationInfo
.FromCall(call, implicitIndexerAccess.Receiver),
4175
MethodInvocationInfo
.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors),
4194
MethodInvocationInfo
.FromFunctionPointerInvocation(functionPointerInvocation),
4213
MethodInvocationInfo
.FromProperty(propertyAccess),
4440
MethodInvocationInfo
.FromCall(call),
4450
MethodInvocationInfo
.FromFunctionPointerInvocation(ptrInvocation),
4460
MethodInvocationInfo
.FromIndexerAccess(indexerAccess),
4476
MethodInvocationInfo
.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver),
4491
MethodInvocationInfo
.FromCall(call, implicitIndexerAccess.Receiver),
4508
MethodInvocationInfo
.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors),
4518
MethodInvocationInfo
.FromProperty(propertyAccess),
4528
MethodInvocationInfo
.FromObjectCreation(objectCreation),
4567
MethodInvocationInfo
.FromUnaryOperator(unaryOperator),
4597
MethodInvocationInfo
.FromInlineArrayConversion(equivalentSignatureMethod, arguments, refKinds, conversion.HasAnyErrors),
4608
MethodInvocationInfo
.FromUserDefinedConversion(operatorMethod, conversion.Operand, conversion.HasAnyErrors),
4639
MethodInvocationInfo
.FromIncrementOperator(increment),
4657
MethodInvocationInfo
.FromCompoundAssignmentOperator(compound),
4676
MethodInvocationInfo
.FromBinaryOperator(binary),
4694
MethodInvocationInfo
.FromUserDefinedConditionalLogicalOperator(uo),
4833
MethodInvocationInfo
.FromCollectionElementInitializer(colElement),
5130
MethodInvocationInfo
.FromCall(call),
5144
MethodInvocationInfo
.FromFunctionPointerInvocation(ptrInvocation),
5158
MethodInvocationInfo
.FromIndexerAccess(indexerAccess),
5178
MethodInvocationInfo
.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver),
5199
MethodInvocationInfo
.FromCall(call, implicitIndexerAccess.Receiver),
5220
MethodInvocationInfo
.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors),
5234
MethodInvocationInfo
.FromProperty(propertyAccess),
5248
MethodInvocationInfo
.FromObjectCreation(objectCreation),
5309
MethodInvocationInfo
.FromUnaryOperator(unary),
5350
MethodInvocationInfo
.FromInlineArrayConversion(equivalentSignatureMethod, arguments, refKinds, conversion.HasAnyErrors),
5365
MethodInvocationInfo
.FromUserDefinedConversion(operatorMethod, conversion.Operand, conversion.HasAnyErrors),
5398
MethodInvocationInfo
.FromIncrementOperator(increment),
5418
MethodInvocationInfo
.FromCompoundAssignmentOperator(compound),
5446
MethodInvocationInfo
.FromBinaryOperator(binary),
5472
MethodInvocationInfo
.FromUserDefinedConditionalLogicalOperator(uo),
5781
MethodInvocationInfo
.FromCollectionElementInitializer(colElement),
5876
MethodInvocationInfo
.FromCall(call),
5919
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),