251 references to Statements
ILLink.CodeFixProvider (1)
RequiresUnsafeCodeFixProvider.cs (1)
177var statements = parentBlock.Statements;
Microsoft.AspNetCore.App.Analyzers (1)
WebApplicationBuilder\WebApplicationBuilderAnalyzer.cs (1)
373foreach (var statement in block.Statements)
Microsoft.AspNetCore.App.CodeFixes (1)
WebApplicationBuilderFixer.cs (1)
121var lambdaStatements = lambdaExpr.Block.Statements;
Microsoft.AspNetCore.Components.Analyzers (4)
ComponentParameterAnalyzer.cs (4)
183if (getter.Body is { Statements: { Count: 1 } } && getter.Body.Statements[0] is ReturnStatementSyntax returnStatement) 196if (setter.Body.Statements.Count == 1) 198assignmentExpression = (setter.Body.Statements[0] as ExpressionStatementSyntax)?.Expression as AssignmentExpressionSyntax;
Microsoft.CodeAnalysis.CSharp (26)
_generated\0\Syntax.xml.Main.Generated.cs (1)
1863=> node.Update(VisitList(node.AttributeLists), VisitToken(node.OpenBraceToken), VisitList(node.Statements), VisitToken(node.CloseBraceToken));
_generated\2\Syntax.xml.Syntax.Generated.cs (20)
3213public new AnonymousMethodExpressionSyntax AddBlockStatements(params StatementSyntax[] items) => WithBlock(this.Block.WithStatements(this.Block.Statements.AddRange(items))); 3358return WithBlock(block.WithStatements(block.Statements.AddRange(items))); 3520return WithBlock(block.WithStatements(block.Statements.AddRange(items))); 6388if (attributeLists != this.AttributeLists || openBraceToken != this.OpenBraceToken || statements != this.Statements || closeBraceToken != this.CloseBraceToken) 6399public new BlockSyntax WithAttributeLists(SyntaxList<AttributeListSyntax> attributeLists) => Update(attributeLists, this.OpenBraceToken, this.Statements, this.CloseBraceToken); 6400public BlockSyntax WithOpenBraceToken(SyntaxToken openBraceToken) => Update(this.AttributeLists, openBraceToken, this.Statements, this.CloseBraceToken); 6402public BlockSyntax WithCloseBraceToken(SyntaxToken closeBraceToken) => Update(this.AttributeLists, this.OpenBraceToken, this.Statements, closeBraceToken); 6406public BlockSyntax AddStatements(params StatementSyntax[] items) => WithStatements(this.Statements.AddRange(items)); 6537return WithBody(body.WithStatements(body.Statements.AddRange(items))); 8293public CheckedStatementSyntax AddBlockStatements(params StatementSyntax[] items) => WithBlock(this.Block.WithStatements(this.Block.Statements.AddRange(items))); 8357public UnsafeStatementSyntax AddBlockStatements(params StatementSyntax[] items) => WithBlock(this.Block.WithStatements(this.Block.Statements.AddRange(items))); 9161public TryStatementSyntax AddBlockStatements(params StatementSyntax[] items) => WithBlock(this.Block.WithStatements(this.Block.Statements.AddRange(items))); 9229public CatchClauseSyntax AddBlockStatements(params StatementSyntax[] items) => WithBlock(this.Block.WithStatements(this.Block.Statements.AddRange(items))); 9377public FinallyClauseSyntax AddBlockStatements(params StatementSyntax[] items) => WithBlock(this.Block.WithStatements(this.Block.Statements.AddRange(items))); 12724return WithBody(body.WithStatements(body.Statements.AddRange(items))); 12870return WithBody(body.WithStatements(body.Statements.AddRange(items))); 13016return WithBody(body.WithStatements(body.Statements.AddRange(items))); 13140return WithBody(body.WithStatements(body.Statements.AddRange(items))); 13313return WithBody(body.WithStatements(body.Statements.AddRange(items))); 13893return WithBody(body.WithStatements(body.Statements.AddRange(items)));
Binder\Binder_Statements.cs (1)
1924var syntaxStatements = node.Statements;
Binder\BlockBinder.cs (3)
35return BuildLocals(_block.Statements, this); 40return BuildLocalFunctions(_block.Statements); 54base.BuildLabels(_block.Statements, ref labels);
Binder\LocalBinderFactory.cs (1)
547foreach (StatementSyntax statement in node.Statements)
Microsoft.CodeAnalysis.CSharp.Analyzers (2)
MetaAnalyzers\Fixers\CSharpConfigureGeneratedCodeAnalysisFix.cs (1)
30return method.Body.Statements;
MetaAnalyzers\Fixers\CSharpEnableConcurrentExecutionFix.cs (1)
30return method.Body.Statements;
Microsoft.CodeAnalysis.CSharp.CodeStyle (40)
src\roslyn\src\Analyzers\CSharp\Analyzers\InvokeDelegateWithConditionalAccess\InvokeDelegateWithConditionalAccessAnalyzer.cs (2)
70if (block.Statements.Count != 1) 75innerStatement = block.Statements[0];
src\roslyn\src\Analyzers\CSharp\Analyzers\RemoveUnnecessaryLambdaExpression\CSharpRemoveUnnecessaryLambdaExpressionDiagnosticAnalyzer.cs (2)
318if (anonymousFunction.Block is { Statements.Count: 1 }) 320var statement = anonymousFunction.Block.Statements[0];
src\roslyn\src\Analyzers\CSharp\Analyzers\RemoveUnreachableCode\RemoveUnreachableCodeHelpers.cs (1)
19siblingStatements = [.. block.Statements];
src\roslyn\src\Analyzers\CSharp\Analyzers\RemoveUnusedParametersAndValues\CSharpRemoveUnusedParametersAndValuesDiagnosticAnalyzer.cs (1)
50return methodSyntax.Body is { Statements: [ThrowStatementSyntax] };
src\roslyn\src\Analyzers\CSharp\Analyzers\SimplifyPropertyAccessor\CSharpSimplifyPropertyAccessorDiagnosticAnalyzer.cs (2)
50if (accessor is (SyntaxKind.GetAccessorDeclaration) { Body.Statements: [ReturnStatementSyntax { Expression.RawKind: (int)SyntaxKind.FieldExpression }] } 57if (accessor is (SyntaxKind.SetAccessorDeclaration or SyntaxKind.InitAccessorDeclaration) { Body.Statements: [ExpressionStatementSyntax { Expression: var innerBlockBodyExpression }] } &&
src\roslyn\src\Analyzers\CSharp\Analyzers\UseAutoProperty\CSharpUseAutoPropertyAnalyzer.cs (1)
202=> accessorDeclaration is { Body.Statements: [T statement] } ? statement : null;
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCoalesceExpression\CSharpUseCoalesceExpressionForIfNullStatementCheckDiagnosticAnalyzer.cs (2)
59whenTrueStatement = ifStatement.Statement is BlockSyntax { Statements.Count: 1 } block 60? block.Statements[0]
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionInitializer\CSharpUpdateExpressionSyntaxHelper.cs (1)
47=> embeddedStatement is BlockSyntax block ? [.. block.Statements] : [embeddedStatement];
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCompoundAssignment\CSharpUseCompoundCoalesceAssignmentDiagnosticAnalyzer.cs (2)
105? block.Statements.Count == 1 ? block.Statements[0] : null
src\roslyn\src\Analyzers\CSharp\Analyzers\UseExpressionBody\Helpers\UseExpressionBodyForIndexersHelper.cs (1)
84return body.Statements[0].GetLocation();
src\roslyn\src\Analyzers\CSharp\Analyzers\UseExpressionBody\Helpers\UseExpressionBodyHelper`1.cs (1)
79return body.Statements[0].GetLocation();
src\roslyn\src\Analyzers\CSharp\Analyzers\UseLabeledJumpStatements\CSharpUseLabeledJumpStatementsHelpers.cs (1)
95Parent: BlockSyntax { Parent: StatementSyntax candidateLoop, Statements: [.., var lastStatement] },
src\roslyn\src\Analyzers\CSharp\Analyzers\UseLabeledJumpStatements\CSharpUseLabeledJumpStatementsHelpers_FlagVariable.cs (11)
153var siteIndex = targetBody.Statements.IndexOf(siteStatement); 159if (reset.Parent != targetBody || targetBody.Statements.IndexOf(reset) >= siteIndex) 213var nextIndex = containingBlock.Statements.IndexOf(statementInBlock) + 1; 215nextIndex >= containingBlock.Statements.Count || 216containingBlock.Statements[nextIndex] is not IfStatementSyntax guard || 259var index = block.Statements.IndexOf(breakStatement); 261block.Statements[index - 1] is not ExpressionStatementSyntax 320var index = block.Statements.IndexOf(assignmentStatement); 321if (index < 0 || index + 1 >= block.Statements.Count || block.Statements[index + 1] is not BreakStatementSyntax breakStatement) 361=> statement is BlockSyntax { Statements: [var single] } ? single : statement;
src\roslyn\src\Analyzers\CSharp\Analyzers\UseLocalFunction\CSharpUseLocalFunctionDiagnosticAnalyzer.cs (2)
365var expressionStatementIndex = block.Statements.IndexOf(expressionStatement); 367previousStatement = block.Statements[expressionStatementIndex - 1];
src\roslyn\src\Analyzers\CSharp\Analyzers\UseNullPropagation\CSharpUseNullPropagationDiagnosticAnalyzer.cs (1)
100? [.. block.Statements]
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpAsAndNullCheckDiagnosticAnalyzer.Analyzer.cs (1)
334lastStatement: block.Statements.Last()))
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpIsAndCastCheckDiagnosticAnalyzer.cs (3)
179if (block.Statements is [TryStatementSyntax tryStatement, ..]) 182if (block.Statements.Count == 0) 185var firstStatement = block.Statements[0];
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePrimaryConstructor\CSharpUsePrimaryConstructorDiagnosticAnalyzer.cs (2)
412if (!block.Statements.All(static s => s is ExpressionStatementSyntax { Expression: AssignmentExpressionSyntax })) 418foreach (var statement in block.Statements)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseSimpleUsingStatement\UseSimpleUsingStatementDiagnosticAnalyzer.cs (1)
209? block.Statements
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\BlockSyntaxExtensions.cs (1)
42block is { Statements: [var statement] } &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpBlockFacts.cs (1)
40BlockSyntax block => block.Statements,
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (22)
src\roslyn\src\Analyzers\CSharp\CodeFixes\AssignOutParameters\AssignOutParametersAtStartCodeFixProvider.cs (1)
41block.Statements[0] == statement &&
src\roslyn\src\Analyzers\CSharp\CodeFixes\NewLines\EmbeddedStatementPlacement\EmbeddedStatementPlacementCodeFixProvider.cs (1)
92blockSyntax.Statements.Count == 0)
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseCollectionExpression\CSharpCollectionExpressionRewriter.cs (1)
863=> statement is BlockSyntax { Statements: [var innerStatement] } ? innerStatement : statement;
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseLabeledJumpStatements\CSharpUseLabeledJumpStatementsCodeFixProvider.cs (2)
108newLoop = newLoop.ReplaceNode(body, body.WithStatements(body.Statements.RemoveAt(body.Statements.Count - 1)));
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseNullPropagation\CSharpUseNullPropagationCodeFixProvider.cs (1)
39=> block.WithStatements([newInnerStatement, .. block.Statements.Skip(1).Select(s => s.WithAdditionalAnnotations(Formatter.Annotation))]);
src\roslyn\src\Analyzers\CSharp\CodeFixes\UsePatternMatching\CSharpAsAndNullCheckCodeFixProvider.cs (1)
63? ((BlockSyntax)newParentScope).Statements.First()
src\roslyn\src\Analyzers\CSharp\CodeFixes\UsePrimaryConstructor\CSharpUsePrimaryConstructorCodeFixProvider.cs (1)
452foreach (var statement in constructorDeclaration.Body.Statements)
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseSimpleUsingStatement\UseSimpleUsingStatementCodeFixProvider.cs (2)
104currentBlock.Statements.ReplaceRange(usingStatement, expandedUsingStatements)), 138var statements = blockSyntax.Statements;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationService.cs (5)
543var blockStatements = block.Statements.ToSet(); 545var index = block.Statements.IndexOf(containingStatement); 556newBlock = newBlock.WithStatements(newBlock.Statements.InsertRange(index, newStatements)); 560newBlock = block.WithStatements(block.Statements.InsertRange(index + 1, newStatements)); 609return block.WithStatements([.. block.Statements, .. statementsArray]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Formatting\TypingFormattingRule.cs (1)
74if (node is BlockSyntax { Statements: { Count: >= 1 } statements })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\InitializeParameter\InitializeParameterHelpers.cs (6)
159? block.Statements.LastOrDefault() 189var indexToAddAfter = block.Statements.IndexOf(s => s == statementToAddAfterOpt); 193editor.InsertAfter(block.Statements[indexToAddAfter], statement); 195else if (block.Statements.Count > 0) 199editor.InsertBefore(block.Statements[0], statement); 205Debug.Assert(block.Statements.Count == 0);
Microsoft.CodeAnalysis.CSharp.Features (91)
CodeRefactorings\InlineMethod\CSharpInlineMethodRefactoringProvider.cs (1)
35if (blockSyntaxNode.Statements is [var statementSyntax])
Completion\CompletionProviders\CompletionUtilities.cs (3)
184var lastStatement = methodDeclaration.Body.Statements.Last(); 199return methodDeclaration.Body.Statements.Last().Span; 223if (firstAccessor.Body is { Statements: [.., var lastStatement] })
ConvertForEachToFor\CSharpConvertForEachToForCodeRefactoringProvider.cs (2)
132if (bodyBlock.Statements.Count == 0) 147bodyBlock.Statements[0],
ConvertForToForEach\CSharpConvertForToForEachCodeRefactoringProvider.cs (1)
38? block.Statements
ConvertIfToSwitch\CSharpConvertIfToSwitchCodeRefactoringProvider.Rewriting.cs (2)
132if (block.Statements.Count == 0) 142statements.AddRange(block.Statements);
ConvertLinq\ConvertForEachToLinqQuery\CSharpConvertForEachToLinqQueryProvider.cs (2)
60var array = block.Statements.ToArray(); 294var statementsOnBlockWithForEach = block.Statements
ConvertLinq\CSharpConvertLinqQueryToForEachProvider.cs (1)
896return block.WithStatements(block.Statements.Insert(0, newStatement));
ConvertProgram\ConvertProgramTransform_TopLevelStatements.cs (3)
229if (methodDeclaration.Body.Statements.Count > 0) 230statements.AddRange(methodDeclaration.Body.Statements[0].WithPrependedLeadingTrivia(methodDeclaration.GetLeadingTrivia())); 232statements.AddRange(methodDeclaration.Body.Statements.Skip(1));
Debugging\CSharpProximityExpressionsService.Worker.cs (3)
98=> _parentStatement.Parent is BlockSyntax parentBlockOpt && parentBlockOpt.Statements.FirstOrDefault() == _parentStatement; 180previousStatement = block.Statements.LastOrDefault(); 238AddLastStatementOfConstruct((statement as BlockSyntax).Statements.LastOrDefault());
EditAndContinue\CSharpEditAndContinueAnalyzer.cs (2)
819var oldUsingDeclarations = oldBlock.Statements.Where(s => s is LocalDeclarationStatementSyntax l && l.UsingKeyword != default); 820var newUsingDeclarations = newBlock.Statements.Where(s => s is LocalDeclarationStatementSyntax l && l.UsingKeyword != default);
ExtractMethod\CSharpMethodExtractor.Analyzer.cs (1)
73Parent: BlockSyntax { Statements: [.., var lastBlockStatement] },
ExtractMethod\CSharpMethodExtractor.CSharpCodeGenerator.CallSiteContainerRewriter.cs (1)
131return node.WithStatements([.. VisitList(ReplaceStatements(node.Statements))]);
ExtractMethod\CSharpMethodExtractor.CSharpCodeGenerator.cs (1)
812var statements = blockBody.Statements;
ExtractMethod\CSharpMethodExtractor.CSharpCodeGenerator.MultipleStatementsCodeGenerator.cs (1)
73BlockSyntax blockNode => blockNode.Statements,
ExtractMethod\CSharpMethodExtractor.PostProcessor.cs (4)
57if (block.Statements.Count == 0) 67var firstStatement = block.Statements.First(); 71var lastStatement = block.Statements.Last(); 79return [.. block.Statements];
GenerateConstructors\CSharpGenerateConstructorsCodeRefactoringProvider.cs (1)
94if (body is BlockSyntax { Statements: [var firstStatement, ..] })
IntroduceUsingStatement\CSharpIntroduceUsingStatementCodeRefactoringProvider.cs (3)
39=> (tryStatement.Block.Statements, tryStatement.Finally?.Block.Statements ?? default); 47BlockSyntax block => block.Statements,
IntroduceVariable\CSharpIntroduceVariableService_IntroduceLocal.cs (4)
327var firstAffectedStatement = block.Statements.Single(s => firstAffectedExpression.GetAncestorOrThis<StatementSyntax>()!.Contains(s)); 328var firstAffectedStatementIndex = block.Statements.IndexOf(firstAffectedStatement); 335currentBlock.Statements.Insert(firstAffectedStatementIndex, declarationStatement)); 535BlockSyntax block => block.Statements,
InvertIf\CSharpInvertIfCodeRefactoringProvider.cs (5)
96BlockSyntax n => n.Statements, 202if (falseBlock.Statements.Any()) 242? block.Statements 264return block.Statements.Count == 1 && IsSingleStatement(block.Statements[0]);
Snippets\CSharpIntMainSnippetProvider.cs (2)
42var returnStatement = body.Statements.First(); 55var returnStatement = body.Statements.First();
src\roslyn\src\Analyzers\CSharp\Analyzers\InvokeDelegateWithConditionalAccess\InvokeDelegateWithConditionalAccessAnalyzer.cs (2)
70if (block.Statements.Count != 1) 75innerStatement = block.Statements[0];
src\roslyn\src\Analyzers\CSharp\Analyzers\RemoveUnnecessaryLambdaExpression\CSharpRemoveUnnecessaryLambdaExpressionDiagnosticAnalyzer.cs (2)
318if (anonymousFunction.Block is { Statements.Count: 1 }) 320var statement = anonymousFunction.Block.Statements[0];
src\roslyn\src\Analyzers\CSharp\Analyzers\RemoveUnreachableCode\RemoveUnreachableCodeHelpers.cs (1)
19siblingStatements = [.. block.Statements];
src\roslyn\src\Analyzers\CSharp\Analyzers\RemoveUnusedParametersAndValues\CSharpRemoveUnusedParametersAndValuesDiagnosticAnalyzer.cs (1)
50return methodSyntax.Body is { Statements: [ThrowStatementSyntax] };
src\roslyn\src\Analyzers\CSharp\Analyzers\SimplifyPropertyAccessor\CSharpSimplifyPropertyAccessorDiagnosticAnalyzer.cs (2)
50if (accessor is (SyntaxKind.GetAccessorDeclaration) { Body.Statements: [ReturnStatementSyntax { Expression.RawKind: (int)SyntaxKind.FieldExpression }] } 57if (accessor is (SyntaxKind.SetAccessorDeclaration or SyntaxKind.InitAccessorDeclaration) { Body.Statements: [ExpressionStatementSyntax { Expression: var innerBlockBodyExpression }] } &&
src\roslyn\src\Analyzers\CSharp\Analyzers\UseAutoProperty\CSharpUseAutoPropertyAnalyzer.cs (1)
202=> accessorDeclaration is { Body.Statements: [T statement] } ? statement : null;
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCoalesceExpression\CSharpUseCoalesceExpressionForIfNullStatementCheckDiagnosticAnalyzer.cs (2)
59whenTrueStatement = ifStatement.Statement is BlockSyntax { Statements.Count: 1 } block 60? block.Statements[0]
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionInitializer\CSharpUpdateExpressionSyntaxHelper.cs (1)
47=> embeddedStatement is BlockSyntax block ? [.. block.Statements] : [embeddedStatement];
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCompoundAssignment\CSharpUseCompoundCoalesceAssignmentDiagnosticAnalyzer.cs (2)
105? block.Statements.Count == 1 ? block.Statements[0] : null
src\roslyn\src\Analyzers\CSharp\Analyzers\UseExpressionBody\Helpers\UseExpressionBodyForIndexersHelper.cs (1)
84return body.Statements[0].GetLocation();
src\roslyn\src\Analyzers\CSharp\Analyzers\UseExpressionBody\Helpers\UseExpressionBodyHelper`1.cs (1)
79return body.Statements[0].GetLocation();
src\roslyn\src\Analyzers\CSharp\Analyzers\UseLabeledJumpStatements\CSharpUseLabeledJumpStatementsHelpers.cs (1)
95Parent: BlockSyntax { Parent: StatementSyntax candidateLoop, Statements: [.., var lastStatement] },
src\roslyn\src\Analyzers\CSharp\Analyzers\UseLabeledJumpStatements\CSharpUseLabeledJumpStatementsHelpers_FlagVariable.cs (11)
153var siteIndex = targetBody.Statements.IndexOf(siteStatement); 159if (reset.Parent != targetBody || targetBody.Statements.IndexOf(reset) >= siteIndex) 213var nextIndex = containingBlock.Statements.IndexOf(statementInBlock) + 1; 215nextIndex >= containingBlock.Statements.Count || 216containingBlock.Statements[nextIndex] is not IfStatementSyntax guard || 259var index = block.Statements.IndexOf(breakStatement); 261block.Statements[index - 1] is not ExpressionStatementSyntax 320var index = block.Statements.IndexOf(assignmentStatement); 321if (index < 0 || index + 1 >= block.Statements.Count || block.Statements[index + 1] is not BreakStatementSyntax breakStatement) 361=> statement is BlockSyntax { Statements: [var single] } ? single : statement;
src\roslyn\src\Analyzers\CSharp\Analyzers\UseLocalFunction\CSharpUseLocalFunctionDiagnosticAnalyzer.cs (2)
365var expressionStatementIndex = block.Statements.IndexOf(expressionStatement); 367previousStatement = block.Statements[expressionStatementIndex - 1];
src\roslyn\src\Analyzers\CSharp\Analyzers\UseNullPropagation\CSharpUseNullPropagationDiagnosticAnalyzer.cs (1)
100? [.. block.Statements]
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpAsAndNullCheckDiagnosticAnalyzer.Analyzer.cs (1)
334lastStatement: block.Statements.Last()))
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpIsAndCastCheckDiagnosticAnalyzer.cs (3)
179if (block.Statements is [TryStatementSyntax tryStatement, ..]) 182if (block.Statements.Count == 0) 185var firstStatement = block.Statements[0];
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePrimaryConstructor\CSharpUsePrimaryConstructorDiagnosticAnalyzer.cs (2)
412if (!block.Statements.All(static s => s is ExpressionStatementSyntax { Expression: AssignmentExpressionSyntax })) 418foreach (var statement in block.Statements)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseSimpleUsingStatement\UseSimpleUsingStatementDiagnosticAnalyzer.cs (1)
209? block.Statements
src\roslyn\src\Analyzers\CSharp\CodeFixes\AssignOutParameters\AssignOutParametersAtStartCodeFixProvider.cs (1)
41block.Statements[0] == statement &&
src\roslyn\src\Analyzers\CSharp\CodeFixes\NewLines\EmbeddedStatementPlacement\EmbeddedStatementPlacementCodeFixProvider.cs (1)
92blockSyntax.Statements.Count == 0)
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseCollectionExpression\CSharpCollectionExpressionRewriter.cs (1)
863=> statement is BlockSyntax { Statements: [var innerStatement] } ? innerStatement : statement;
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseLabeledJumpStatements\CSharpUseLabeledJumpStatementsCodeFixProvider.cs (2)
108newLoop = newLoop.ReplaceNode(body, body.WithStatements(body.Statements.RemoveAt(body.Statements.Count - 1)));
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseNullPropagation\CSharpUseNullPropagationCodeFixProvider.cs (1)
39=> block.WithStatements([newInnerStatement, .. block.Statements.Skip(1).Select(s => s.WithAdditionalAnnotations(Formatter.Annotation))]);
src\roslyn\src\Analyzers\CSharp\CodeFixes\UsePatternMatching\CSharpAsAndNullCheckCodeFixProvider.cs (1)
63? ((BlockSyntax)newParentScope).Statements.First()
src\roslyn\src\Analyzers\CSharp\CodeFixes\UsePrimaryConstructor\CSharpUsePrimaryConstructorCodeFixProvider.cs (1)
452foreach (var statement in constructorDeclaration.Body.Statements)
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseSimpleUsingStatement\UseSimpleUsingStatementCodeFixProvider.cs (2)
104currentBlock.Statements.ReplaceRange(usingStatement, expandedUsingStatements)), 138var statements = blockSyntax.Statements;
Microsoft.CodeAnalysis.CSharp.NetAnalyzers (12)
Microsoft.NetCore.Analyzers\Performance\CSharpPreferDictionaryTryMethodsOverContainsKeyGuardFixer.cs (2)
233if (ifStatement.Statement is BlockSyntax { Statements.Count: 1 } or ExpressionStatementSyntax) 263if (ifStatement.Else.Statement is BlockSyntax { Statements.Count: 1 } or ExpressionStatementSyntax)
Microsoft.NetCore.Analyzers\Performance\CSharpPreferHashDataOverComputeHash.Fixer.cs (2)
149var statements = block.Statements 165if (i == block.Statements.Count - 1)
Microsoft.NetCore.Analyzers\Performance\CSharpUseSearchValues.cs (1)
78accessor.Body?.Statements is [var statement] &&
Microsoft.NetCore.Analyzers\Runtime\CSharpAvoidRedundantRegexIsMatchBeforeMatch.Fixer.cs (7)
155var firstStatement = block.Statements.FirstOrDefault(); 213block.Statements.FirstOrDefault() != assignmentStatement) 227int ifIndex = parentBlock.Statements.IndexOf(ifStatement); 233if (parentBlock.Statements[ifIndex - 1] is not LocalDeclarationStatementSyntax preDecl) 366for (int i = ifIndex + 1; i < parentBlock.Statements.Count; i++) 368if (ContainsIdentifierReference(parentBlock.Statements[i], variableName)) 615foreach (var statement in parentBlock.Statements)
Microsoft.CodeAnalysis.CSharp.Workspaces (32)
CodeGeneration\CSharpSyntaxGenerator.cs (12)
2632SyntaxKind.MethodDeclaration => ((MethodDeclarationSyntax)declaration).Body?.Statements, 2633SyntaxKind.OperatorDeclaration => ((OperatorDeclarationSyntax)declaration).Body?.Statements, 2634SyntaxKind.ConversionOperatorDeclaration => ((ConversionOperatorDeclarationSyntax)declaration).Body?.Statements, 2635SyntaxKind.ConstructorDeclaration => ((ConstructorDeclarationSyntax)declaration).Body?.Statements, 2636SyntaxKind.DestructorDeclaration => ((DestructorDeclarationSyntax)declaration).Body?.Statements, 2637SyntaxKind.LocalFunctionStatement => ((LocalFunctionStatementSyntax)declaration).Body?.Statements, 2638SyntaxKind.AnonymousMethodExpression => (((AnonymousMethodExpressionSyntax)declaration).Body as BlockSyntax)?.Statements, 2639SyntaxKind.ParenthesizedLambdaExpression => (((ParenthesizedLambdaExpressionSyntax)declaration).Body as BlockSyntax)?.Statements, 2640SyntaxKind.SimpleLambdaExpression => (((SimpleLambdaExpressionSyntax)declaration).Body as BlockSyntax)?.Statements, 2644SyntaxKind.RemoveAccessorDeclaration => ((AccessorDeclarationSyntax)declaration).Body?.Statements, 2782return accessor?.Body?.Statements ?? []; 2788return accessor?.Body?.Statements ?? [];
Rename\LabelConflictVisitor.cs (1)
34foreach (var statement in node.Statements)
Rename\LocalConflictVisitor.cs (1)
48=> VisitBlockStatements(node, node.Statements);
Simplification\Reducers\CSharpMiscellaneousReducer.cs (4)
119if (node.Statements.Count != 1) 154if (!FormattingRangeHelper.AreTwoTokensOnSameLine(node.Statements[0].GetFirstToken(), node.Statements[0].GetLastToken())) 173return node.Statements[0];
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\BlockSyntaxExtensions.cs (1)
42block is { Statements: [var statement] } &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpBlockFacts.cs (1)
40BlockSyntax block => block.Statements,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationService.cs (5)
543var blockStatements = block.Statements.ToSet(); 545var index = block.Statements.IndexOf(containingStatement); 556newBlock = newBlock.WithStatements(newBlock.Statements.InsertRange(index, newStatements)); 560newBlock = block.WithStatements(block.Statements.InsertRange(index + 1, newStatements)); 609return block.WithStatements([.. block.Statements, .. statementsArray]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Formatting\TypingFormattingRule.cs (1)
74if (node is BlockSyntax { Statements: { Count: >= 1 } statements })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\InitializeParameter\InitializeParameterHelpers.cs (6)
159? block.Statements.LastOrDefault() 189var indexToAddAfter = block.Statements.IndexOf(s => s == statementToAddAfterOpt); 193editor.InsertAfter(block.Statements[indexToAddAfter], statement); 195else if (block.Statements.Count > 0) 199editor.InsertBefore(block.Statements[0], statement); 205Debug.Assert(block.Statements.Count == 0);
Microsoft.Gen.ContextualOptions.Unit.Tests (2)
EmitterTests.cs (2)
67.Statements 96.Statements
Microsoft.Interop.SourceGeneration (3)
SyntaxExtensions.cs (3)
27if (block.Statements.Count == 0) 39block = block.WithStatements(block.Statements.AddRange(((BlockSyntax)childStatement).Statements));
Roslyn.Diagnostics.CSharp.Analyzers (14)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\BlockSyntaxExtensions.cs (1)
42block is { Statements: [var statement] } &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpBlockFacts.cs (1)
40BlockSyntax block => block.Statements,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationService.cs (5)
543var blockStatements = block.Statements.ToSet(); 545var index = block.Statements.IndexOf(containingStatement); 556newBlock = newBlock.WithStatements(newBlock.Statements.InsertRange(index, newStatements)); 560newBlock = block.WithStatements(block.Statements.InsertRange(index + 1, newStatements)); 609return block.WithStatements([.. block.Statements, .. statementsArray]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Formatting\TypingFormattingRule.cs (1)
74if (node is BlockSyntax { Statements: { Count: >= 1 } statements })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\InitializeParameter\InitializeParameterHelpers.cs (6)
159? block.Statements.LastOrDefault() 189var indexToAddAfter = block.Statements.IndexOf(s => s == statementToAddAfterOpt); 193editor.InsertAfter(block.Statements[indexToAddAfter], statement); 195else if (block.Statements.Count > 0) 199editor.InsertBefore(block.Statements[0], statement); 205Debug.Assert(block.Statements.Count == 0);