1 write to ExpressionOpt
Microsoft.CodeAnalysis.CSharp (1)
Generated\BoundNodes.xml.Generated.cs (1)
3573this.ExpressionOpt = expressionOpt;
35 references to ExpressionOpt
Microsoft.CodeAnalysis.CSharp (35)
Binder\Binder_Query.cs (1)
683var i1 = r1 != null ? r1.ExpressionOpt as BoundCall : null;
Binder\RefSafetyAnalysis.cs (1)
521if (node.ExpressionOpt is { Type: { } } expr)
Binder\Semantics\OverloadResolution\OverloadResolution.cs (4)
3274if (returnStmt.ExpressionOpt != null && ExpressionMatchExactly(returnStmt.ExpressionOpt, y, ref useSiteInfo)) 3295if (r.ExpressionOpt == null || !ExpressionMatchExactly(r.ExpressionOpt, y, ref useSiteInfo))
BoundTree\BoundNode_Source.cs (1)
151var value = returnStatement.ExpressionOpt;
BoundTree\UnboundLambda.cs (2)
376var expression = node.ExpressionOpt; 1571statements[0] is BoundReturnStatement { RefKind: Microsoft.CodeAnalysis.RefKind.None, ExpressionOpt: BoundExpression expr })
CodeGen\EmitStatement.cs (1)
864var expressionOpt = boundReturnStatement.ExpressionOpt;
CodeGen\Optimizer.cs (1)
1797BoundExpression expressionOpt = (BoundExpression)this.Visit(node.ExpressionOpt);
FlowAnalysis\AbstractFlowPass.cs (2)
2026VisitRvalue(node.ExpressionOpt, isKnownToBeAnLvalue: node.RefKind != RefKind.None); 2031WriteArgument(node.ExpressionOpt, node.RefKind, method: null);
FlowAnalysis\NullableWalker.cs (4)
1003if (returnStatement.ExpressionOpt is { ConstantValueOpt: { IsBoolean: true, BooleanValue: bool value } }) 1161if (returnStatement.ExpressionOpt is { ConstantValueOpt: { IsBoolean: true, BooleanValue: bool value } }) 1182else if (returnStatement.ExpressionOpt is { ConstantValueOpt: { IsBoolean: true, BooleanValue: bool value } }) 2882var expr = node.ExpressionOpt;
Generated\BoundNodes.xml.Generated.cs (4)
3586if (refKind != this.RefKind || expressionOpt != this.ExpressionOpt || @checked != this.Checked) 10116this.Visit(node.ExpressionOpt); 11326BoundExpression? expressionOpt = (BoundExpression?)this.Visit(node.ExpressionOpt); 15771new TreeDumperNode("expressionOpt", null, new TreeDumperNode[] { Visit(node.ExpressionOpt, null) }),
Lowering\AsyncRewriter\AsyncExceptionHandlerRewriter.cs (2)
379node.ExpressionOpt, 387var returnExpr = (BoundExpression)(this.Visit(node.ExpressionOpt));
Lowering\AsyncRewriter\AsyncMethodToStateMachineRewriter.cs (2)
644if (node.ExpressionOpt != null) 648F.Assignment(F.Local(_exprRetValue), (BoundExpression)Visit(node.ExpressionOpt)),
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (1)
141var result = Visit(((BoundReturnStatement)stmt).ExpressionOpt);
Lowering\Instrumentation\CodeCoverageInstrumenter.cs (4)
414returnStatement.ExpressionOpt != null && 415returnStatement.ExpressionOpt.Syntax != null) 417Debug.Assert(returnStatement.ExpressionOpt.Syntax.Parent != null); 419SyntaxKind parentKind = returnStatement.ExpressionOpt.Syntax.Parent.Kind();
Lowering\Instrumentation\DebugInfoInjector.cs (1)
406if (original.WasCompilerGenerated && original.ExpressionOpt == null && original.Syntax.Kind() == SyntaxKind.Block)
Lowering\LocalRewriter\LocalRewriter_ReturnStatement.cs (1)
27(node.ExpressionOpt != null ?
Lowering\SpillSequenceSpiller.cs (1)
696var expression = VisitExpression(ref builder, node.ExpressionOpt);
Operations\CSharpOperationFactory.cs (2)
1072ExpressionOpt?.Kind == BoundKind.BadExpression); 2058IOperation? returnedValue = Create(boundReturnStatement.ExpressionOpt);