16 instantiations of MethodInvocationInfo
Microsoft.CodeAnalysis.CSharp (16)
Binder\Binder.ValueChecks.cs (16)
134=> new MethodInvocationInfo 147=> new MethodInvocationInfo 162return new MethodInvocationInfo 176=> new MethodInvocationInfo 191return new MethodInvocationInfo 207return new MethodInvocationInfo 224return new MethodInvocationInfo 238=> new MethodInvocationInfo 251=> new MethodInvocationInfo 264=> new MethodInvocationInfo 279return new MethodInvocationInfo 296return new MethodInvocationInfo 310=> new MethodInvocationInfo 323=> new MethodInvocationInfo 332=> new MethodInvocationInfo 4918new MethodInvocationInfo
116 references to MethodInvocationInfo
Microsoft.CodeAnalysis.CSharp (116)
Binder\Binder.ValueChecks.cs (91)
133public static MethodInvocationInfo FromCall(BoundCall call, BoundExpression? substitutedReceiver = null) 146public static MethodInvocationInfo FromCallParts(MethodSymbol method, BoundExpression receiver, ImmutableArray<BoundExpression> args, ThreeState receiverIsSubjectToCloning) 159public static MethodInvocationInfo FromFunctionPointerInvocation(BoundFunctionPointerInvocation ptrInvocation) 175public static MethodInvocationInfo FromIndexerAccess(BoundIndexerAccess indexerAccess, BoundExpression? substitutedReceiver = null) 188public static MethodInvocationInfo FromObjectCreation(BoundObjectCreationExpressionBase objectCreation) 204public static MethodInvocationInfo FromUnaryOperator(BoundUnaryOperator unaryOperator) 220public static MethodInvocationInfo FromBinaryOperator(BoundBinaryOperator binaryOperator) 237public static MethodInvocationInfo FromUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator logicalOperator) 250public static MethodInvocationInfo FromUserDefinedConversion(MethodSymbol operatorMethod, BoundExpression operand, bool hasAnyErrors) 263public static MethodInvocationInfo FromInlineArrayConversion(SignatureOnlyMethodSymbol equivalentSignatureMethod, ImmutableArray<BoundExpression> arguments, ImmutableArray<RefKind> refKinds, bool hasAnyErrors) 276public static MethodInvocationInfo FromIncrementOperator(BoundIncrementOperator incrementOperator) 292public static MethodInvocationInfo FromCompoundAssignmentOperator(BoundCompoundAssignmentOperator compoundOperator) 309public static MethodInvocationInfo FromInlineArrayAccess(SignatureOnlyMethodSymbol equivalentSignatureMethod, ImmutableArray<BoundExpression> arguments, ImmutableArray<RefKind> refKinds, bool hasAnyErrors) 322public static MethodInvocationInfo FromProperty(BoundPropertyAccess propertyAccess) 331public static MethodInvocationInfo FromCollectionElementInitializer(BoundCollectionElementInitializer colElement) 2253in MethodInvocationInfo methodInvocationInfo, 2261var localMethodInvocationInfo = ReplaceWithExtensionImplementationIfNeeded(in methodInvocationInfo); 2270SafeContext getInvocationEscapeWithOldRules(ref readonly MethodInvocationInfo methodInvocationInfo, bool isRefEscape) 2335ref readonly MethodInvocationInfo methodInvocationInfo, 2378in MethodInvocationInfo methodInvocationInfo) 2405private static MethodInvocationInfo ReplaceWithExtensionImplementationIfNeeded(ref readonly MethodInvocationInfo methodInvocationInfo) 2419var result = methodInvocationInfo with { MethodInfo = replacedMethodInfo }; 2464in MethodInvocationInfo methodInvocationInfo, 2475var localMethodInvocationInfo = ReplaceWithExtensionImplementationIfNeeded(in methodInvocationInfo); 2484bool checkInvocationEscapeWithOldRules(SyntaxNode syntax, ref readonly MethodInvocationInfo methodInvocationInfo, 2494var receiverlessMethodInvocationInfo = methodInvocationInfo with 2560ref readonly MethodInvocationInfo methodInvocationInfo, 2613in MethodInvocationInfo methodInvocationInfo, 2651ref readonly MethodInvocationInfo methodInvocationInfo, 2827ref readonly MethodInvocationInfo methodInvocationInfo, 2881ref readonly MethodInvocationInfo methodInvocationInfo, 2884var localMethodInvocationInfo = ReplaceWithExtensionImplementationIfNeeded(in methodInvocationInfo); 2961in MethodInvocationInfo methodInvocationInfo, 2998ref readonly MethodInvocationInfo methodInvocationInfo, 3003var receiverlessInvocationInfo = methodInvocationInfo; 3063ref readonly MethodInvocationInfo methodInvocationInfo, 3068var adjustedMethodInvocationInfo = methodInvocationInfo; 3172ref readonly MethodInvocationInfo methodInvocationInfo, 3183bool checkInvocationArgMixingWithOldRules(SyntaxNode syntax, ref readonly MethodInvocationInfo methodInvocationInfo, BindingDiagnosticBag diagnostics, Symbol symbolForReporting) 3191var receiverlessInvocationInfo = methodInvocationInfo; 3266ref readonly MethodInvocationInfo methodInvocationInfo, 3339private static bool AllParametersConsideredInEscapeAnalysisHaveArguments(ref readonly MethodInvocationInfo methodInvocationInfo) 3820MethodInvocationInfo.FromCall(call), 3835MethodInvocationInfo.FromFunctionPointerInvocation(ptrInvocation), 3845MethodInvocationInfo.FromIndexerAccess(indexerAccess), 3860MethodInvocationInfo.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver), 3880MethodInvocationInfo.FromCall(call, implicitIndexerAccess.Receiver), 3905MethodInvocationInfo.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors), 3914MethodInvocationInfo.FromProperty(propertyAccess), 4107MethodInvocationInfo.FromCall(call), 4126MethodInvocationInfo.FromIndexerAccess(indexerAccess), 4150MethodInvocationInfo.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver), 4174MethodInvocationInfo.FromCall(call, implicitIndexerAccess.Receiver), 4203MethodInvocationInfo.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors), 4221MethodInvocationInfo.FromFunctionPointerInvocation(functionPointerInvocation), 4239MethodInvocationInfo.FromProperty(propertyAccess), 4465MethodInvocationInfo.FromCall(call), 4474MethodInvocationInfo.FromFunctionPointerInvocation(ptrInvocation), 4483MethodInvocationInfo.FromIndexerAccess(indexerAccess), 4498MethodInvocationInfo.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver), 4512MethodInvocationInfo.FromCall(call, implicitIndexerAccess.Receiver), 4528MethodInvocationInfo.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors), 4537MethodInvocationInfo.FromProperty(propertyAccess), 4546MethodInvocationInfo.FromObjectCreation(objectCreation), 4584MethodInvocationInfo.FromUnaryOperator(unaryOperator), 4613MethodInvocationInfo.FromInlineArrayConversion(equivalentSignatureMethod, arguments, refKinds, conversion.HasAnyErrors), 4623MethodInvocationInfo.FromUserDefinedConversion(operatorMethod, conversion.Operand, conversion.HasAnyErrors), 4652MethodInvocationInfo.FromIncrementOperator(increment), 4669MethodInvocationInfo.FromCompoundAssignmentOperator(compound), 4687MethodInvocationInfo.FromBinaryOperator(binary), 4704MethodInvocationInfo.FromUserDefinedConditionalLogicalOperator(uo), 4842MethodInvocationInfo.FromCollectionElementInitializer(colElement)) 5138MethodInvocationInfo.FromCall(call), 5151MethodInvocationInfo.FromFunctionPointerInvocation(ptrInvocation), 5164MethodInvocationInfo.FromIndexerAccess(indexerAccess), 5183MethodInvocationInfo.FromIndexerAccess(indexerAccess, implicitIndexerAccess.Receiver), 5203MethodInvocationInfo.FromCall(call, implicitIndexerAccess.Receiver), 5223MethodInvocationInfo.FromInlineArrayAccess(equivalentSignatureMethod, arguments, refKinds, elementAccess.HasAnyErrors), 5236MethodInvocationInfo.FromProperty(propertyAccess), 5249MethodInvocationInfo.FromObjectCreation(objectCreation), 5307MethodInvocationInfo.FromUnaryOperator(unary), 5347MethodInvocationInfo.FromInlineArrayConversion(equivalentSignatureMethod, arguments, refKinds, conversion.HasAnyErrors), 5361MethodInvocationInfo.FromUserDefinedConversion(operatorMethod, conversion.Operand, conversion.HasAnyErrors), 5395MethodInvocationInfo.FromIncrementOperator(increment), 5414MethodInvocationInfo.FromCompoundAssignmentOperator(compound), 5441MethodInvocationInfo.FromBinaryOperator(binary), 5466MethodInvocationInfo.FromUserDefinedConditionalLogicalOperator(uo), 5774MethodInvocationInfo.FromCollectionElementInitializer(colElement), 5868MethodInvocationInfo.FromCall(call))); 5910MethodInvocationInfo.FromCall(call),
Binder\Binder_Statements.cs (5)
1617var methodInvocationInfo = MethodInvocationInfo.FromCallParts(propSet, receiver, args: [op2], receiverIsSubjectToCloning: ThreeState.Unknown); 1621methodInvocationInfo = MethodInvocationInfo.FromIndexerAccess(indexer); 1654void handleExtensionSetter(ref readonly MethodInvocationInfo methodInvocationInfo) 1657var localMethodInvocationInfo = ReplaceWithExtensionImplementationIfNeeded(in methodInvocationInfo);
Binder\RefSafetyAnalysis.cs (20)
615var methodInvocationInfo = MethodInvocationInfo.FromCompoundAssignmentOperator(node); 760MethodInvocationInfo methodInvocationInfo = getInvocationInfo(node); 763var calls = ArrayBuilder<(BoundCall call, MethodInvocationInfo methodInvocationInfo)>.GetInstance(); 798static MethodInvocationInfo getInvocationInfo(BoundCall node) 800var methodInvocationInfo = MethodInvocationInfo.FromCall(node); 810void visitReceiver(BoundCall node, ref readonly MethodInvocationInfo methodInvocationInfo) 822void visitArguments(BoundCall node, ref readonly MethodInvocationInfo methodInvocationInfo) 840private void VisitReceiver(ref readonly MethodInvocationInfo methodInvocationInfo) 853private void VisitArguments(BoundCall node, ref readonly MethodInvocationInfo methodInvocationInfo) 970var methodInvocationInfo = MethodInvocationInfo.FromObjectCreation(node); 1041var methodInvocationInfo = MethodInvocationInfo.FromIndexerAccess(node); 1065var methodInvocationInfo = MethodInvocationInfo.FromFunctionPointerInvocation(node); 1144var methodInvocationInfo = MethodInvocationInfo.FromCall(invocation); 1266MethodInvocationInfo.FromInlineArrayConversion(equivalentSignatureMethod, arguments, refKinds, node.HasAnyErrors),