5 instantiations of UnboundLambda
Microsoft.CodeAnalysis.CSharp (5)
Binder\Binder_Query.cs (1)
869var lambda = new UnboundLambda(node, state, functionType: null, withDependencies, hasErrors: false) { WasCompilerGenerated = true };
BoundTree\UnboundLambda.cs (3)
413var lambda = new UnboundLambda(syntax, data, functionType, withDependencies, hasErrors: hasErrors); 429var lambda = new UnboundLambda(Syntax, data, FunctionType, WithDependencies, nullableState, HasErrors); 442var lambda = new UnboundLambda(Syntax, data, FunctionType, WithDependencies, _nullableState, HasErrors);
Generated\BoundNodes.xml.Generated.cs (1)
7665var result = new UnboundLambda(this.Syntax, data, functionType, withDependencies, this.HasErrors);
103 references to UnboundLambda
Microsoft.CodeAnalysis.CSharp (103)
Binder\Binder.IdentifierUsedAsValueFinder.cs (3)
173UnboundLambda unboundLambda = enclosingBinder.AnalyzeAnonymousFunction(lambdaSyntax, BindingDiagnosticBag.Discarded); 178private static ExecutableCodeBinder CreateLambdaBodyBinder(Binder enclosingBinder, UnboundLambda unboundLambda) 531UnboundLambda unboundLambda = Binder.MakeQueryUnboundLambda(
Binder\Binder_Expressions.cs (4)
2774GenerateAnonymousFunctionConversionError(diagnostics, operand.Syntax, (UnboundLambda)operand, targetType); 5384else if (argument is UnboundLambda unboundLambda) 7696var msgId = ((UnboundLambda)boundLeft).MessageID; 11504var msgId = ((UnboundLambda)receiver).MessageID;
Binder\Binder_Invocation.cs (3)
1165case UnboundLambda unboundLambda: 2073var unboundArgument = (UnboundLambda)argument;
Binder\Binder_Lambda.cs (4)
38private UnboundLambda AnalyzeAnonymousFunction( 255return UnboundLambda.Create(syntax, this, diagnostics.AccumulatesDependencies, returnRefKind, returnType, parameterAttributes, refKinds, scopes, types, names, discardsOpt, parameterSyntaxListOpt, defaultValues, isAsync: isAsync, isStatic: isStatic); 358private UnboundLambda BindAnonymousFunction(AnonymousFunctionExpressionSyntax syntax, BindingDiagnosticBag diagnostics) 363var lambda = AnalyzeAnonymousFunction(syntax, diagnostics);
Binder\Binder_Operators.cs (1)
2526case UnboundLambda _:
Binder\Binder_Query.cs (21)
232var lambda = MakeQueryUnboundLambda(state.RangeVariableMap(), x, v, diagnostics.AccumulatesDependencies); 258var lambdaLeft = MakeQueryUnboundLambda(state.RangeVariableMap(), x, k, diagnostics.AccumulatesDependencies); 366var lambda = MakeQueryUnboundLambda(state.RangeVariableMap(), state.rangeVariable, where.Condition, diagnostics.AccumulatesDependencies); 406var outerKeySelectorLambda = MakeQueryUnboundLambda(state.RangeVariableMap(), state.rangeVariable, join.LeftExpression, diagnostics.AccumulatesDependencies); 410var innerKeySelectorLambda = MakeQueryUnboundLambda(QueryTranslationState.RangeVariableMap(x2), x2, join.RightExpression, diagnostics.AccumulatesDependencies); 424var resultSelectorLambda = MakeQueryUnboundLambda(state.RangeVariableMap(), ImmutableArray.Create(x1, x2), select.Expression, diagnostics.AccumulatesDependencies); 452var resultSelectorLambda = MakeQueryUnboundLambda(state.RangeVariableMap(), ImmutableArray.Create(x1, g), select.Expression, diagnostics.AccumulatesDependencies); 492var resultSelectorLambda = MakePairLambda(join, state, x1, x2, diagnostics.AccumulatesDependencies); 522var resultSelectorLambda = MakePairLambda(join, state, x1, g, diagnostics.AccumulatesDependencies); 567var lambda = MakeQueryUnboundLambda(state.RangeVariableMap(), state.rangeVariable, ordering.Expression, diagnostics.AccumulatesDependencies); 609var resultSelectorLambda = MakeQueryUnboundLambda(state.RangeVariableMap(), ImmutableArray.Create(x1, x2), select.Expression, diagnostics.AccumulatesDependencies); 656var resultSelectorLambda = MakePairLambda(from, state, x1, x2, diagnostics.AccumulatesDependencies); 687private UnboundLambda MakePairLambda(CSharpSyntaxNode node, QueryTranslationState state, RangeVariableSymbol x1, RangeVariableSymbol x2, bool withDependencies) 699var result = MakeQueryUnboundLambda(state.RangeVariableMap(), ImmutableArray.Create(x1, x2), node, bodyFactory, withDependencies); 752var lambda = MakeQueryUnboundLambda(state.RangeVariableMap(), ImmutableArray.Create(x), let.Expression, bodyFactory, diagnostics.AccumulatesDependencies); 826private UnboundLambda MakeQueryUnboundLambda(RangeVariableMap qvm, RangeVariableSymbol parameter, ExpressionSyntax expression, bool withDependencies) 831private UnboundLambda MakeQueryUnboundLambda(RangeVariableMap qvm, ImmutableArray<RangeVariableSymbol> parameters, ExpressionSyntax expression, bool withDependencies) 842private UnboundLambda MakeQueryUnboundLambdaWithCast(RangeVariableMap qvm, RangeVariableSymbol parameter, ExpressionSyntax expression, TypeSyntax castTypeSyntax, TypeWithAnnotations castType, bool withDependencies) 860private UnboundLambda MakeQueryUnboundLambda(RangeVariableMap qvm, ImmutableArray<RangeVariableSymbol> parameters, CSharpSyntaxNode node, LambdaBodyFactory bodyFactory, bool withDependencies) 865private static UnboundLambda MakeQueryUnboundLambda(CSharpSyntaxNode node, QueryUnboundLambdaState state, bool withDependencies) 869var lambda = new UnboundLambda(node, state, functionType: null, withDependencies, hasErrors: false) { WasCompilerGenerated = true };
Binder\Binder_QueryErrors.cs (2)
222var unbound = (UnboundLambda)arg;
Binder\Binder_Statements.cs (2)
2015UnboundLambda anonymousFunction, TypeSymbol targetType) 2344GenerateAnonymousFunctionConversionError(diagnostics, syntax, (UnboundLambda)operand, targetType);
Binder\Semantics\Conversions\ConversionsBase.cs (4)
1467private static LambdaConversionResult IsAnonymousFunctionCompatibleWithDelegate(UnboundLambda anonymousFunction, TypeSymbol type, CSharpCompilation compilation, bool isTargetExpressionTree) 1586private static LambdaConversionResult IsAnonymousFunctionCompatibleWithExpressionTree(UnboundLambda anonymousFunction, NamedTypeSymbol type, CSharpCompilation compilation) 1624public static LambdaConversionResult IsAnonymousFunctionCompatibleWithType(UnboundLambda anonymousFunction, TypeSymbol type, CSharpCompilation compilation) 1651return IsAnonymousFunctionCompatibleWithType((UnboundLambda)source, destination, compilation) == LambdaConversionResult.Success;
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (6)
1561UnboundLambda anonymousFunction = (UnboundLambda)source; 1615UnboundLambda anonymousFunction = (UnboundLambda)source; 3092var anonymousFunction = (UnboundLambda)source;
Binder\Semantics\OverloadResolution\OverloadResolution.cs (6)
2929var lambdaOpt = node as UnboundLambda; 3275BoundLambda lambda = ((UnboundLambda)node).BindForReturnTypeInference(d); 3500UnboundLambda lambdaOpt = node as UnboundLambda; 3663private bool CanDowngradeConversionFromLambdaToNeither(BetterResult currentResult, UnboundLambda lambda, TypeSymbol type1, TypeSymbol type2, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool fromTypeAnalysis)
Binder\Semantics\OverloadResolution\OverloadResolutionResult.cs (2)
1072hadError |= ((UnboundLambda)argument).GenerateSummaryErrors(diagnostics); 1220((UnboundLambda)argument).GenerateAnonymousFunctionConversionError(diagnostics, parameterType);
BoundTree\BoundExpressionExtensions.cs (1)
158UnboundLambda unboundLambda => unboundLambda.FunctionType,
BoundTree\UnboundLambda.cs (12)
82public BoundLambda(SyntaxNode syntax, UnboundLambda unboundLambda, BoundBlock body, ReadOnlyBindingDiagnostic<AssemblySymbol> diagnostics, Binder binder, TypeSymbol? delegateType, InferredLambdaReturnType inferredReturnType) 193UnboundLambda node, Binder binder, TypeSymbol? delegateType, bool isAsync, ConversionsBase conversions) 390public static UnboundLambda Create( 411var functionType = FunctionTypeSymbol.CreateIfFeatureEnabled(syntax, binder, static (binder, expr) => ((UnboundLambda)expr).Data.InferDelegateType()); 413var lambda = new UnboundLambda(syntax, data, functionType, withDependencies, hasErrors: hasErrors); 426internal UnboundLambda WithNullableState(NullableWalker.VariableState nullableState) 429var lambda = new UnboundLambda(Syntax, data, FunctionType, WithDependencies, nullableState, HasErrors); 434internal UnboundLambda WithNoCache() 442var lambda = new UnboundLambda(Syntax, data, FunctionType, WithDependencies, _nullableState, HasErrors); 520private UnboundLambda _unboundLambda = null!; // we would prefer this readonly, but we have an initialization cycle. 549public void SetUnboundLambda(UnboundLambda unbound) 570public UnboundLambda UnboundLambda => _unboundLambda;
Compilation\CSharpSemanticModel.cs (1)
2241var lambda = ((UnboundLambda)boundExpr).BindForErrorRecovery();
Compilation\MemberSemanticModel.cs (3)
1745boundInnerLambdaOrQuery = ((UnboundLambda)boundInnerLambdaOrQuery).BindForErrorRecovery(); 1810var unbound = (UnboundLambda)node;
Compilation\MemberSemanticModel.NodeMapBuilder.cs (1)
171current = ((UnboundLambda)node).BindForErrorRecovery();
Compiler\MethodCompiler.cs (1)
2311public override BoundNode? VisitUnboundLambda(UnboundLambda node)
FlowAnalysis\AbstractFlowPass.cs (1)
3228public override BoundNode VisitUnboundLambda(UnboundLambda node)
FlowAnalysis\NullableWalker.cs (4)
8158static UnboundLambda getUnboundLambda(BoundLambda expr, VariableState variableState) 8834UnboundLambda unboundLambda = lambda.UnboundLambda; 10058var unboundLambda = lambda.UnboundLambda; 10064public override BoundNode? VisitUnboundLambda(UnboundLambda node)
FlowAnalysis\NullableWalker.DebugVerifier.cs (1)
183public override BoundNode? VisitUnboundLambda(UnboundLambda node)
FlowAnalysis\ReadWriteWalker.cs (1)
283public override BoundNode VisitUnboundLambda(UnboundLambda node)
Generated\BoundNodes.xml.Generated.cs (15)
7591public BoundLambda(SyntaxNode syntax, UnboundLambda unboundLambda, MethodSymbol symbol, BoundBlock body, ReadOnlyBindingDiagnostic<AssemblySymbol> diagnostics, Binder binder, TypeSymbol? type, bool hasErrors = false) 7607public UnboundLambda UnboundLambda { get; } 7617public BoundLambda Update(UnboundLambda unboundLambda, MethodSymbol symbol, BoundBlock body, ReadOnlyBindingDiagnostic<AssemblySymbol> diagnostics, Binder binder, TypeSymbol? type) 7661public UnboundLambda Update(UnboundLambdaState data, FunctionTypeSymbol? functionType, Boolean withDependencies) 7665var result = new UnboundLambda(this.Syntax, data, functionType, withDependencies, this.HasErrors); 9266return VisitUnboundLambda((UnboundLambda)node, arg); 9538public virtual R VisitUnboundLambda(UnboundLambda node, A arg) => this.DefaultVisit(node, arg); 9774public virtual BoundNode? VisitUnboundLambda(UnboundLambda node) => this.DefaultVisit(node); 10675public override BoundNode? VisitUnboundLambda(UnboundLambda node) => null; 12149UnboundLambda unboundLambda = node.UnboundLambda; 12154public override BoundNode? VisitUnboundLambda(UnboundLambda node) 14723UnboundLambda unboundLambda = node.UnboundLambda; 14739public override BoundNode? VisitUnboundLambda(UnboundLambda node) 14742UnboundLambda updatedNode; 16990public override TreeDumperNode VisitUnboundLambda(UnboundLambda node, object? arg) => new TreeDumperNode("unboundLambda", null, new TreeDumperNode[]
Operations\CSharpOperationFactory.cs (2)
86return CreateUnboundLambdaOperation((UnboundLambda)boundNode); 984private IOperation CreateUnboundLambdaOperation(UnboundLambda unboundLambda)
Symbols\Source\LambdaSymbol.cs (2)
45UnboundLambda unboundLambda, 323UnboundLambda unboundLambda,