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
225
return new
MethodInvocationInfo
239
=> new
MethodInvocationInfo
252
=> new
MethodInvocationInfo
265
=> new
MethodInvocationInfo
280
return new
MethodInvocationInfo
297
return new
MethodInvocationInfo
311
=> new
MethodInvocationInfo
324
=> new
MethodInvocationInfo
333
=> new
MethodInvocationInfo
4914
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)
238
public static
MethodInvocationInfo
FromUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator logicalOperator)
251
public static
MethodInvocationInfo
FromUserDefinedConversion(MethodSymbol operatorMethod, BoundExpression operand, bool hasAnyErrors)
264
public static
MethodInvocationInfo
FromInlineArrayConversion(SignatureOnlyMethodSymbol equivalentSignatureMethod, ImmutableArray<BoundExpression> arguments, ImmutableArray<RefKind> refKinds, bool hasAnyErrors)
277
public static
MethodInvocationInfo
FromIncrementOperator(BoundIncrementOperator incrementOperator)
293
public static
MethodInvocationInfo
FromCompoundAssignmentOperator(BoundCompoundAssignmentOperator compoundOperator)
310
public static
MethodInvocationInfo
FromInlineArrayAccess(SignatureOnlyMethodSymbol equivalentSignatureMethod, ImmutableArray<BoundExpression> arguments, ImmutableArray<RefKind> refKinds, bool hasAnyErrors)
323
public static
MethodInvocationInfo
FromProperty(BoundPropertyAccess propertyAccess)
332
public static
MethodInvocationInfo
FromCollectionElementInitializer(BoundCollectionElementInitializer colElement)
2209
in
MethodInvocationInfo
methodInvocationInfo,
2218
var
localMethodInvocationInfo = ReplaceWithExtensionImplementationIfNeeded(in methodInvocationInfo);
2227
SafeContext getInvocationEscapeWithOldRules(ref readonly
MethodInvocationInfo
methodInvocationInfo, SafeContext localScopeDepth, bool isRefEscape)
2292
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2336
in
MethodInvocationInfo
methodInvocationInfo,
2364
private static
MethodInvocationInfo
ReplaceWithExtensionImplementationIfNeeded(ref readonly
MethodInvocationInfo
methodInvocationInfo)
2378
var
result = methodInvocationInfo with { MethodInfo = replacedMethodInfo };
2423
in
MethodInvocationInfo
methodInvocationInfo,
2435
var
localMethodInvocationInfo = ReplaceWithExtensionImplementationIfNeeded(in methodInvocationInfo);
2444
bool checkInvocationEscapeWithOldRules(SyntaxNode syntax, ref readonly
MethodInvocationInfo
methodInvocationInfo,
2454
var
receiverlessMethodInvocationInfo = methodInvocationInfo with
2520
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2574
in
MethodInvocationInfo
methodInvocationInfo,
2613
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2789
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2843
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2846
var
localMethodInvocationInfo = ReplaceWithExtensionImplementationIfNeeded(in methodInvocationInfo);
2923
in
MethodInvocationInfo
methodInvocationInfo,
2960
ref readonly
MethodInvocationInfo
methodInvocationInfo,
2965
var
receiverlessInvocationInfo = methodInvocationInfo;
3025
ref readonly
MethodInvocationInfo
methodInvocationInfo,
3030
var
adjustedMethodInvocationInfo = methodInvocationInfo;
3134
ref readonly
MethodInvocationInfo
methodInvocationInfo,
3146
bool checkInvocationArgMixingWithOldRules(SyntaxNode syntax, ref readonly
MethodInvocationInfo
methodInvocationInfo,
3155
var
receiverlessInvocationInfo = methodInvocationInfo;
3230
ref readonly
MethodInvocationInfo
methodInvocationInfo,
3304
private static bool AllParametersConsideredInEscapeAnalysisHaveArguments(ref readonly
MethodInvocationInfo
methodInvocationInfo)
3785
MethodInvocationInfo
.FromCall(call),
3801
MethodInvocationInfo
.FromFunctionPointerInvocation(ptrInvocation),
3812
MethodInvocationInfo
.FromIndexerAccess(indexerAccess),
3828
MethodInvocationInfo
.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver),
3849
MethodInvocationInfo
.FromCall(call, implicitIndexerAccess.Receiver),
3875
MethodInvocationInfo
.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors),
3885
MethodInvocationInfo
.FromProperty(propertyAccess),
4079
MethodInvocationInfo
.FromCall(call),
4099
MethodInvocationInfo
.FromIndexerAccess(indexerAccess),
4124
MethodInvocationInfo
.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver),
4149
MethodInvocationInfo
.FromCall(call, implicitIndexerAccess.Receiver),
4179
MethodInvocationInfo
.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors),
4198
MethodInvocationInfo
.FromFunctionPointerInvocation(functionPointerInvocation),
4217
MethodInvocationInfo
.FromProperty(propertyAccess),
4445
MethodInvocationInfo
.FromCall(call),
4455
MethodInvocationInfo
.FromFunctionPointerInvocation(ptrInvocation),
4465
MethodInvocationInfo
.FromIndexerAccess(indexerAccess),
4481
MethodInvocationInfo
.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver),
4496
MethodInvocationInfo
.FromCall(call, implicitIndexerAccess.Receiver),
4513
MethodInvocationInfo
.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors),
4523
MethodInvocationInfo
.FromProperty(propertyAccess),
4533
MethodInvocationInfo
.FromObjectCreation(objectCreation),
4572
MethodInvocationInfo
.FromUnaryOperator(unaryOperator),
4602
MethodInvocationInfo
.FromInlineArrayConversion(equivalentSignatureMethod, arguments, refKinds, conversion.HasAnyErrors),
4613
MethodInvocationInfo
.FromUserDefinedConversion(operatorMethod, conversion.Operand, conversion.HasAnyErrors),
4643
MethodInvocationInfo
.FromIncrementOperator(increment),
4661
MethodInvocationInfo
.FromCompoundAssignmentOperator(compound),
4680
MethodInvocationInfo
.FromBinaryOperator(binary),
4698
MethodInvocationInfo
.FromUserDefinedConditionalLogicalOperator(uo),
4837
MethodInvocationInfo
.FromCollectionElementInitializer(colElement),
5134
MethodInvocationInfo
.FromCall(call),
5148
MethodInvocationInfo
.FromFunctionPointerInvocation(ptrInvocation),
5162
MethodInvocationInfo
.FromIndexerAccess(indexerAccess),
5182
MethodInvocationInfo
.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver),
5203
MethodInvocationInfo
.FromCall(call, implicitIndexerAccess.Receiver),
5224
MethodInvocationInfo
.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors),
5238
MethodInvocationInfo
.FromProperty(propertyAccess),
5252
MethodInvocationInfo
.FromObjectCreation(objectCreation),
5313
MethodInvocationInfo
.FromUnaryOperator(unary),
5354
MethodInvocationInfo
.FromInlineArrayConversion(equivalentSignatureMethod, arguments, refKinds, conversion.HasAnyErrors),
5369
MethodInvocationInfo
.FromUserDefinedConversion(operatorMethod, conversion.Operand, conversion.HasAnyErrors),
5404
MethodInvocationInfo
.FromIncrementOperator(increment),
5424
MethodInvocationInfo
.FromCompoundAssignmentOperator(compound),
5452
MethodInvocationInfo
.FromBinaryOperator(binary),
5478
MethodInvocationInfo
.FromUserDefinedConditionalLogicalOperator(uo),
5787
MethodInvocationInfo
.FromCollectionElementInitializer(colElement),
5882
MethodInvocationInfo
.FromCall(call),
5925
MethodInvocationInfo
.FromCall(call),
Binder\Binder_Statements.cs (5)
1616
var
methodInvocationInfo =
MethodInvocationInfo
.FromCallParts(propSet, receiver, args: [op2], receiverIsSubjectToCloning: ThreeState.Unknown);
1620
methodInvocationInfo =
MethodInvocationInfo
.FromIndexerAccess(indexer);
1653
void handleExtensionSetter(ref readonly
MethodInvocationInfo
methodInvocationInfo)
1656
var
localMethodInvocationInfo = ReplaceWithExtensionImplementationIfNeeded(in methodInvocationInfo);
Binder\RefSafetyAnalysis.cs (20)
615
var
methodInvocationInfo =
MethodInvocationInfo
.FromCompoundAssignmentOperator(node);
761
MethodInvocationInfo
methodInvocationInfo = getInvocationInfo(node);
764
var calls = ArrayBuilder<(BoundCall call,
MethodInvocationInfo
methodInvocationInfo)>.GetInstance();
799
static
MethodInvocationInfo
getInvocationInfo(BoundCall node)
801
var
methodInvocationInfo =
MethodInvocationInfo
.FromCall(node);
811
void visitReceiver(BoundCall node, ref readonly
MethodInvocationInfo
methodInvocationInfo)
823
void visitArguments(BoundCall node, ref readonly
MethodInvocationInfo
methodInvocationInfo)
841
private void VisitReceiver(ref readonly
MethodInvocationInfo
methodInvocationInfo)
854
private void VisitArguments(BoundCall node, ref readonly
MethodInvocationInfo
methodInvocationInfo)
972
var
methodInvocationInfo =
MethodInvocationInfo
.FromObjectCreation(node);
1044
var
methodInvocationInfo =
MethodInvocationInfo
.FromIndexerAccess(node);
1069
var
methodInvocationInfo =
MethodInvocationInfo
.FromFunctionPointerInvocation(node);
1149
var
methodInvocationInfo =
MethodInvocationInfo
.FromCall(invocation);
1272
MethodInvocationInfo
.FromInlineArrayConversion(equivalentSignatureMethod, arguments, refKinds, node.HasAnyErrors),