63 references to ExpressionBody
Microsoft.CodeAnalysis.CSharp (22)
Binder\Binder_Statements.cs (5)
572
if (node.
ExpressionBody
!= null)
574
expressionBody = runAnalysis(BindExpressionBodyAsBlock(node.
ExpressionBody
, BindingDiagnosticBag.Discarded), BindingDiagnosticBag.Discarded);
577
else if (node.
ExpressionBody
!= null)
579
expressionBody = runAnalysis(BindExpressionBodyAsBlock(node.
ExpressionBody
, diagnostics), diagnostics);
598
node.Body, node.
ExpressionBody
, node, diagnostics);
Binder\LocalBinderFactory.cs (1)
430
ArrowExpressionClauseSyntax arrowBody = node.
ExpressionBody
;
Lowering\ClosureConversion\ClosureConversion.cs (1)
1458
lambdaOrLambdaBodySyntax = (SyntaxNode?)localFunction.Body ?? localFunction.
ExpressionBody
?.Expression;
Symbols\Source\LocalFunctionSymbol.cs (1)
379
internal bool IsExpressionBodied => Syntax is { Body: null,
ExpressionBody
: object _ };
Symbols\Source\SourceMethodSymbolWithAttributes.cs (1)
57
return (CSharpSyntaxNode?)localFunction.Body ?? localFunction.
ExpressionBody
;
Syntax.xml.Main.Generated.cs (1)
1834
=> node.Update(VisitList(node.AttributeLists), VisitList(node.Modifiers), (TypeSyntax?)Visit(node.ReturnType) ?? throw new ArgumentNullException("returnType"), VisitToken(node.Identifier), (TypeParameterListSyntax?)Visit(node.TypeParameterList), (ParameterListSyntax?)Visit(node.ParameterList) ?? throw new ArgumentNullException("parameterList"), VisitList(node.ConstraintClauses), (BlockSyntax?)Visit(node.Body), (ArrowExpressionClauseSyntax?)Visit(node.
ExpressionBody
), VisitToken(node.SemicolonToken));
Syntax.xml.Syntax.Generated.cs (10)
6395
if (attributeLists != this.AttributeLists || modifiers != this.Modifiers || returnType != this.ReturnType || identifier != this.Identifier || typeParameterList != this.TypeParameterList || parameterList != this.ParameterList || constraintClauses != this.ConstraintClauses || body != this.Body || expressionBody != this.
ExpressionBody
|| semicolonToken != this.SemicolonToken)
6406
public new LocalFunctionStatementSyntax WithAttributeLists(SyntaxList<AttributeListSyntax> attributeLists) => Update(attributeLists, this.Modifiers, this.ReturnType, this.Identifier, this.TypeParameterList, this.ParameterList, this.ConstraintClauses, this.Body, this.
ExpressionBody
, this.SemicolonToken);
6407
public LocalFunctionStatementSyntax WithModifiers(SyntaxTokenList modifiers) => Update(this.AttributeLists, modifiers, this.ReturnType, this.Identifier, this.TypeParameterList, this.ParameterList, this.ConstraintClauses, this.Body, this.
ExpressionBody
, this.SemicolonToken);
6408
public LocalFunctionStatementSyntax WithReturnType(TypeSyntax returnType) => Update(this.AttributeLists, this.Modifiers, returnType, this.Identifier, this.TypeParameterList, this.ParameterList, this.ConstraintClauses, this.Body, this.
ExpressionBody
, this.SemicolonToken);
6409
public LocalFunctionStatementSyntax WithIdentifier(SyntaxToken identifier) => Update(this.AttributeLists, this.Modifiers, this.ReturnType, identifier, this.TypeParameterList, this.ParameterList, this.ConstraintClauses, this.Body, this.
ExpressionBody
, this.SemicolonToken);
6410
public LocalFunctionStatementSyntax WithTypeParameterList(TypeParameterListSyntax? typeParameterList) => Update(this.AttributeLists, this.Modifiers, this.ReturnType, this.Identifier, typeParameterList, this.ParameterList, this.ConstraintClauses, this.Body, this.
ExpressionBody
, this.SemicolonToken);
6411
public LocalFunctionStatementSyntax WithParameterList(ParameterListSyntax parameterList) => Update(this.AttributeLists, this.Modifiers, this.ReturnType, this.Identifier, this.TypeParameterList, parameterList, this.ConstraintClauses, this.Body, this.
ExpressionBody
, this.SemicolonToken);
6412
public LocalFunctionStatementSyntax WithConstraintClauses(SyntaxList<TypeParameterConstraintClauseSyntax> constraintClauses) => Update(this.AttributeLists, this.Modifiers, this.ReturnType, this.Identifier, this.TypeParameterList, this.ParameterList, constraintClauses, this.Body, this.
ExpressionBody
, this.SemicolonToken);
6413
public LocalFunctionStatementSyntax WithBody(BlockSyntax? body) => Update(this.AttributeLists, this.Modifiers, this.ReturnType, this.Identifier, this.TypeParameterList, this.ParameterList, this.ConstraintClauses, body, this.
ExpressionBody
, this.SemicolonToken);
6415
public LocalFunctionStatementSyntax WithSemicolonToken(SyntaxToken semicolonToken) => Update(this.AttributeLists, this.Modifiers, this.ReturnType, this.Identifier, this.TypeParameterList, this.ParameterList, this.ConstraintClauses, this.Body, this.
ExpressionBody
, semicolonToken);
Syntax\LambdaUtilities.cs (2)
129
LocalFunctionStatementSyntax localFunctionStatementSyntax => (CSharpSyntaxNode?)localFunctionStatementSyntax.Body ?? localFunctionStatementSyntax.
ExpressionBody
!.Expression,
487
=> (SyntaxNode?)localFunctionStatementSyntax.Body ?? localFunctionStatementSyntax.
ExpressionBody
?.Expression;
Microsoft.CodeAnalysis.CSharp.CodeStyle (1)
src\Analyzers\CSharp\Analyzers\UseExpressionBody\Helpers\UseExpressionBodyForLocalFunctionHelper.cs (1)
38
=> statement.
ExpressionBody
;
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (6)
src\Analyzers\CSharp\CodeFixes\AssignOutParameters\AssignOutParametersAboveReturnCodeFixProvider.cs (1)
48
if (exprOrStatement is LocalFunctionStatementSyntax {
ExpressionBody
: { } localFunctionExpressionBody })
src\Analyzers\CSharp\CodeFixes\AssignOutParameters\AssignOutParametersAtStartCodeFixProvider.cs (1)
33
if (location is LocalFunctionStatementSyntax {
ExpressionBody
: { } })
src\Analyzers\CSharp\CodeFixes\MakeLocalFunctionStatic\MakeLocalFunctionStaticCodeFixHelper.cs (1)
150
var localFunctionBodyOperation = semanticModel.GetOperation(localFunction.Body ?? (SyntaxNode)localFunction.
ExpressionBody
!.Expression, cancellationToken);
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationService.cs (1)
619
localFunctionStatement.
ExpressionBody
?.TryConvertToBlock(
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\MethodGenerator.cs (1)
204
if (localFunctionDeclaration.
ExpressionBody
== null)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\InitializeParameter\InitializeParameterHelpers.cs (1)
140
LocalFunctionStatementSyntax localFunction => (SyntaxNode?)localFunction.Body ?? localFunction.
ExpressionBody
!,
Microsoft.CodeAnalysis.CSharp.EditorFeatures (1)
AutomaticCompletion\AutomaticLineEnderCommandHandler_Helpers.cs (1)
523
=> localFunctionStatementNode.
ExpressionBody
== null
Microsoft.CodeAnalysis.CSharp.Features (16)
CodeRefactorings\ConvertLocalFunctionToMethod\CSharpConvertLocalFunctionToMethodCodeRefactoringProvider.cs (3)
74
Contract.ThrowIfTrue(localFunction is { Body: null,
ExpressionBody
: null });
77
localFunction.Body ?? (SyntaxNode)localFunction.
ExpressionBody
!.Expression);
310
.WithExpressionBody(localFunction.
ExpressionBody
)
EditAndContinue\BreakpointSpans.cs (1)
423
: TryCreateSpanForNode(localFunction.
ExpressionBody
!.Expression, position);
EditAndContinue\CSharpEditAndContinueAnalyzer.cs (2)
482
else if (localFunc.
ExpressionBody
is not null)
485
yield return localFunc.
ExpressionBody
.Expression;
EditAndContinue\SyntaxComparer.cs (1)
1030
body = (SyntaxNode?)localFunction.Body ?? localFunction.
ExpressionBody
!;
ExtractMethod\CSharpMethodExtractor.cs (1)
82
if (SelectionWithin(localFunction.
ExpressionBody
) || SelectionWithin(localFunction.Body))
ExtractMethod\CSharpMethodExtractor.CSharpCodeGenerator.cs (1)
1027
=> TweakNewLinesInMethod(method, method.Body, method.
ExpressionBody
);
ExtractMethod\CSharpMethodExtractor.TriviaResult.cs (1)
126
LocalFunctionStatementSyntax localFunctionDeclaration => (localFunctionDeclaration.Body, localFunctionDeclaration.
ExpressionBody
, localFunctionDeclaration.SemicolonToken),
src\Analyzers\CSharp\Analyzers\UseExpressionBody\Helpers\UseExpressionBodyForLocalFunctionHelper.cs (1)
38
=> statement.
ExpressionBody
;
src\Analyzers\CSharp\CodeFixes\AssignOutParameters\AssignOutParametersAboveReturnCodeFixProvider.cs (1)
48
if (exprOrStatement is LocalFunctionStatementSyntax {
ExpressionBody
: { } localFunctionExpressionBody })
src\Analyzers\CSharp\CodeFixes\AssignOutParameters\AssignOutParametersAtStartCodeFixProvider.cs (1)
33
if (location is LocalFunctionStatementSyntax {
ExpressionBody
: { } })
src\Analyzers\CSharp\CodeFixes\MakeLocalFunctionStatic\MakeLocalFunctionStaticCodeFixHelper.cs (1)
150
var localFunctionBodyOperation = semanticModel.GetOperation(localFunction.Body ?? (SyntaxNode)localFunction.
ExpressionBody
!.Expression, cancellationToken);
src\Compilers\CSharp\Portable\Syntax\LambdaUtilities.cs (2)
129
LocalFunctionStatementSyntax localFunctionStatementSyntax => (CSharpSyntaxNode?)localFunctionStatementSyntax.Body ?? localFunctionStatementSyntax.
ExpressionBody
!.Expression,
487
=> (SyntaxNode?)localFunctionStatementSyntax.Body ?? localFunctionStatementSyntax.
ExpressionBody
?.Expression;
Microsoft.CodeAnalysis.CSharp.Features.UnitTests (2)
EditAndContinue\SyntaxUtilitiesTests.cs (2)
200
Assert.True(SyntaxUtilities.IsAsyncDeclaration(f1.
ExpressionBody
));
210
Assert.Equal(1, SyntaxUtilities.GetSuspensionPoints(f1.
ExpressionBody
).Count());
Microsoft.CodeAnalysis.CSharp.Syntax.UnitTests (5)
Generated\Syntax.Test.xml.Generated.cs (2)
12403
Assert.Null(node.
ExpressionBody
);
12405
var newNode = node.WithAttributeLists(node.AttributeLists).WithModifiers(node.Modifiers).WithReturnType(node.ReturnType).WithIdentifier(node.Identifier).WithTypeParameterList(node.TypeParameterList).WithParameterList(node.ParameterList).WithConstraintClauses(node.ConstraintClauses).WithBody(node.Body).WithExpressionBody(node.
ExpressionBody
).WithSemicolonToken(node.SemicolonToken);
Parsing\LocalFunctionParsingTests.cs (3)
1355
Assert.NotNull(s1.
ExpressionBody
);
1356
Assert.Equal(SyntaxKind.NumericLiteralExpression, s1.
ExpressionBody
.Expression.Kind());
1365
Assert.Null(s1.
ExpressionBody
);
Microsoft.CodeAnalysis.CSharp.Workspaces (7)
CodeGeneration\CSharpSyntaxGenerator.cs (4)
2462
if (local.
ExpressionBody
!= null)
2464
return local.
ExpressionBody
.Expression;
2518
if (local.
ExpressionBody
!= null)
2520
return ReplaceWithTrivia(local, local.
ExpressionBody
.Expression, expr);
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationService.cs (1)
619
localFunctionStatement.
ExpressionBody
?.TryConvertToBlock(
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\MethodGenerator.cs (1)
204
if (localFunctionDeclaration.
ExpressionBody
== null)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\InitializeParameter\InitializeParameterHelpers.cs (1)
140
LocalFunctionStatementSyntax localFunction => (SyntaxNode?)localFunction.Body ?? localFunction.
ExpressionBody
!,
Roslyn.Diagnostics.CSharp.Analyzers (3)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationService.cs (1)
619
localFunctionStatement.
ExpressionBody
?.TryConvertToBlock(
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\MethodGenerator.cs (1)
204
if (localFunctionDeclaration.
ExpressionBody
== null)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\InitializeParameter\InitializeParameterHelpers.cs (1)
140
LocalFunctionStatementSyntax localFunction => (SyntaxNode?)localFunction.Body ?? localFunction.
ExpressionBody
!,