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)
7667var 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)
2729GenerateAnonymousFunctionConversionError(diagnostics, operand.Syntax, (UnboundLambda)operand, targetType); 5333else if (argument is UnboundLambda unboundLambda) 7645var msgId = ((UnboundLambda)boundLeft).MessageID; 11119var msgId = ((UnboundLambda)receiver).MessageID;
Binder\Binder_Invocation.cs (3)
1149case UnboundLambda unboundLambda: 2018var unboundArgument = (UnboundLambda)argument;
Binder\Binder_Lambda.cs (4)
36private UnboundLambda AnalyzeAnonymousFunction( 244return UnboundLambda.Create(syntax, this, diagnostics.AccumulatesDependencies, returnRefKind, returnType, parameterAttributes, refKinds, scopes, types, names, discardsOpt, parameterSyntaxList, defaultValues, isAsync: isAsync, isStatic: isStatic); 346private UnboundLambda BindAnonymousFunction(AnonymousFunctionExpressionSyntax syntax, BindingDiagnosticBag diagnostics) 351var 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)
2003UnboundLambda anonymousFunction, TypeSymbol targetType) 2328GenerateAnonymousFunctionConversionError(diagnostics, syntax, (UnboundLambda)operand, targetType);
Binder\Semantics\Conversions\ConversionsBase.cs (4)
1467private static LambdaConversionResult IsAnonymousFunctionCompatibleWithDelegate(UnboundLambda anonymousFunction, TypeSymbol type, CSharpCompilation compilation, bool isTargetExpressionTree) 1588private static LambdaConversionResult IsAnonymousFunctionCompatibleWithExpressionTree(UnboundLambda anonymousFunction, NamedTypeSymbol type, CSharpCompilation compilation) 1626public static LambdaConversionResult IsAnonymousFunctionCompatibleWithType(UnboundLambda anonymousFunction, TypeSymbol type, CSharpCompilation compilation) 1653return IsAnonymousFunctionCompatibleWithType((UnboundLambda)source, destination, compilation) == LambdaConversionResult.Success;
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (6)
1534UnboundLambda anonymousFunction = (UnboundLambda)source; 1588UnboundLambda anonymousFunction = (UnboundLambda)source; 3065var anonymousFunction = (UnboundLambda)source;
Binder\Semantics\OverloadResolution\OverloadResolution.cs (6)
2898var lambdaOpt = node as UnboundLambda; 3257BoundLambda lambda = ((UnboundLambda)node).BindForReturnTypeInference(d); 3461UnboundLambda lambdaOpt = node as UnboundLambda; 3608private 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); 1218((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); 499private UnboundLambda _unboundLambda = null!; // we would prefer this readonly, but we have an initialization cycle. 528public void SetUnboundLambda(UnboundLambda unbound) 549public UnboundLambda UnboundLambda => _unboundLambda;
Compilation\CSharpSemanticModel.cs (1)
2233var 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)
2211public override BoundNode? VisitUnboundLambda(UnboundLambda node)
FlowAnalysis\AbstractFlowPass.cs (1)
3216public override BoundNode VisitUnboundLambda(UnboundLambda node)
FlowAnalysis\NullableWalker.cs (4)
8058static UnboundLambda getUnboundLambda(BoundLambda expr, VariableState variableState) 8732UnboundLambda unboundLambda = lambda.UnboundLambda; 9953var unboundLambda = lambda.UnboundLambda; 9959public override BoundNode? VisitUnboundLambda(UnboundLambda node)
FlowAnalysis\NullableWalker.DebugVerifier.cs (1)
183public override BoundNode? VisitUnboundLambda(UnboundLambda node)
FlowAnalysis\ReadWriteWalker.cs (1)
278public override BoundNode VisitUnboundLambda(UnboundLambda node)
Generated\BoundNodes.xml.Generated.cs (15)
7593public BoundLambda(SyntaxNode syntax, UnboundLambda unboundLambda, LambdaSymbol symbol, BoundBlock body, ReadOnlyBindingDiagnostic<AssemblySymbol> diagnostics, Binder binder, TypeSymbol? type, bool hasErrors = false) 7609public UnboundLambda UnboundLambda { get; } 7619public BoundLambda Update(UnboundLambda unboundLambda, LambdaSymbol symbol, BoundBlock body, ReadOnlyBindingDiagnostic<AssemblySymbol> diagnostics, Binder binder, TypeSymbol? type) 7663public UnboundLambda Update(UnboundLambdaState data, FunctionTypeSymbol? functionType, Boolean withDependencies) 7667var result = new UnboundLambda(this.Syntax, data, functionType, withDependencies, this.HasErrors); 9268return VisitUnboundLambda((UnboundLambda)node, arg); 9540public virtual R VisitUnboundLambda(UnboundLambda node, A arg) => this.DefaultVisit(node, arg); 9776public virtual BoundNode? VisitUnboundLambda(UnboundLambda node) => this.DefaultVisit(node); 10677public override BoundNode? VisitUnboundLambda(UnboundLambda node) => null; 12022UnboundLambda unboundLambda = node.UnboundLambda; 12027public override BoundNode? VisitUnboundLambda(UnboundLambda node) 14580UnboundLambda unboundLambda = node.UnboundLambda; 14596public override BoundNode? VisitUnboundLambda(UnboundLambda node) 14599UnboundLambda updatedNode; 16848public 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,