5 instantiations of MethodArgumentInfo
Microsoft.CodeAnalysis.CSharp (5)
Binder\ForEachLoopBinder.cs (3)
1047builder.PatternDisposeInfo = new MethodArgumentInfo(patternDisposeMethod, argsBuilder.ToImmutableAndFree(), argsToParams, defaultArguments, expanded); 1269info = new MethodArgumentInfo(result, analyzedArguments.Arguments.ToImmutable(), argsToParams, defaultArguments, expanded); 1742return new MethodArgumentInfo(method, argsBuilder.ToImmutableAndFree(), argsToParams, defaultArguments, expanded);
Binder\MethodArgumentInfo.cs (1)
25return new MethodArgumentInfo(method, Arguments: ImmutableArray<BoundExpression>.Empty, ArgsToParamsOpt: default, DefaultArguments: default, Expanded: false);
Binder\UsingStatementBinder.cs (1)
242patternDisposeInfo = new MethodArgumentInfo(disposeMethod, argumentsBuilder.ToImmutableAndFree(), argsToParams, defaultArguments, expanded);
43 references to MethodArgumentInfo
Microsoft.CodeAnalysis.CSharp (43)
Binder\ForEachEnumeratorInfo.cs (9)
23public readonly MethodArgumentInfo GetEnumeratorInfo; 25public readonly MethodArgumentInfo MoveNextInfo; 38public readonly MethodArgumentInfo? PatternDisposeInfo; 49MethodArgumentInfo getEnumeratorInfo, 51MethodArgumentInfo moveNextInfo, 55MethodArgumentInfo? patternDisposeInfo, 88public MethodArgumentInfo? GetEnumeratorInfo; 90public MethodArgumentInfo? MoveNextInfo; 95public MethodArgumentInfo? PatternDisposeInfo;
Binder\ForEachLoopBinder.cs (13)
977builder.MoveNextInfo = MethodArgumentInfo.CreateParameterlessMethod(moveNextMethod); 1121MethodArgumentInfo getEnumeratorInfo; 1147private MethodArgumentInfo FindForEachPatternMethod(TypeSymbol patternType, string methodName, LookupResult lookupResult, bool warningsOnly, BindingDiagnosticBag diagnostics, bool isAsync) 1203MethodArgumentInfo patternInfo = PerformForEachPatternOverloadResolution(patternType, candidateMethods, warningsOnly, diagnostics, isAsync); 1214private MethodArgumentInfo PerformForEachPatternOverloadResolution(TypeSymbol patternType, ArrayBuilder<MethodSymbol> candidateMethods, bool warningsOnly, BindingDiagnosticBag diagnostics, bool isAsync) 1233MethodArgumentInfo info = null; 1288private MethodArgumentInfo FindForEachPatternMethodViaExtension(BoundExpression collectionExpr, string methodName, BindingDiagnosticBag diagnostics) 1335var info = BindDefaultArguments( 1468MethodArgumentInfo moveNextMethodCandidate = FindForEachPatternMethod(enumeratorType, 1703private MethodArgumentInfo GetParameterlessSpecialTypeMemberInfo(SpecialMember member, SyntaxNode syntax, BindingDiagnosticBag diagnostics) 1708? MethodArgumentInfo.CreateParameterlessMethod(resolvedMember) 1713private MethodArgumentInfo BindDefaultArguments(MethodSymbol method, BoundExpression extensionReceiverOpt, bool expanded, SyntaxNode syntax, BindingDiagnosticBag diagnostics, bool assertMissingParametersAreOptional = true) 1719return MethodArgumentInfo.CreateParameterlessMethod(method);
Binder\MethodArgumentInfo.cs (1)
22public static MethodArgumentInfo CreateParameterlessMethod(MethodSymbol method)
Binder\UsingStatementBinder.cs (2)
112MethodArgumentInfo? patternDisposeInfo; 184bool bindDisposable(bool fromExpression, out MethodArgumentInfo? patternDisposeInfo, out TypeSymbol? awaitableType)
Generated\BoundNodes.xml.Generated.cs (6)
3365public BoundUsingLocalDeclarations(SyntaxNode syntax, MethodArgumentInfo? patternDisposeInfoOpt, BoundAwaitableInfo? awaitOpt, ImmutableArray<BoundLocalDeclaration> localDeclarations, bool hasErrors = false) 3375public MethodArgumentInfo? PatternDisposeInfoOpt { get; } 3381public BoundUsingLocalDeclarations Update(MethodArgumentInfo? patternDisposeInfoOpt, BoundAwaitableInfo? awaitOpt, ImmutableArray<BoundLocalDeclaration> localDeclarations) 4007public BoundUsingStatement(SyntaxNode syntax, ImmutableArray<LocalSymbol> locals, BoundMultipleLocalDeclarations? declarationsOpt, BoundExpression? expressionOpt, BoundStatement body, BoundAwaitableInfo? awaitOpt, MethodArgumentInfo? patternDisposeInfoOpt, bool hasErrors = false) 4027public MethodArgumentInfo? PatternDisposeInfoOpt { get; } 4032public BoundUsingStatement Update(ImmutableArray<LocalSymbol> locals, BoundMultipleLocalDeclarations? declarationsOpt, BoundExpression? expressionOpt, BoundStatement body, BoundAwaitableInfo? awaitOpt, MethodArgumentInfo? patternDisposeInfoOpt)
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (4)
118MethodArgumentInfo getEnumeratorInfo = enumeratorInfo.GetEnumeratorInfo; 295var disposeInfo = enumeratorInfo.PatternDisposeInfo; 299disposeInfo = MethodArgumentInfo.CreateParameterlessMethod(disposeMethod); 491private BoundExpression SynthesizeCall(MethodArgumentInfo methodArgumentInfo, CSharpSyntaxNode syntax, BoundExpression? receiver, bool allowExtensionAndOptionalParameters, bool assertParametersAreOptional = true)
Lowering\LocalRewriter\LocalRewriter_UsingStatement.cs (6)
65MethodArgumentInfo? patternDisposeInfo, 211MethodArgumentInfo? patternDisposeInfo) 285MethodArgumentInfo? patternDisposeInfo) 438MethodArgumentInfo? disposeInfo, 470disposeInfo = MethodArgumentInfo.CreateParameterlessMethod(disposeMethod); 492private BoundExpression MakeCallWithNoExplicitArgument(MethodArgumentInfo methodArgumentInfo, SyntaxNode syntax, BoundExpression? expression, bool assertParametersAreOptional = true)
Operations\CSharpOperationFactory.cs (2)
1822ImmutableArray<IArgumentOperation> CreateArgumentOperations(MethodArgumentInfo? info, 2795private ImmutableArray<IArgumentOperation> CreateDisposeArguments(MethodArgumentInfo patternDisposeInfo, SyntaxNode syntax)