1 instantiation of DoStatementSyntax
Microsoft.CodeAnalysis.CSharp (1)
Syntax.xml.Internal.Generated.cs (1)
12165internal override SyntaxNode CreateRed(SyntaxNode? parent, int position) => new CSharp.Syntax.DoStatementSyntax(this, parent, position);
119 references to DoStatementSyntax
Microsoft.CodeAnalysis.CSharp (30)
Binder\Binder_Statements.cs (2)
82result = BindDo((DoStatementSyntax)node, diagnostics); 2806private BoundStatement BindDo(DoStatementSyntax node, BindingDiagnosticBag diagnostics)
Binder\LocalBinderFactory.cs (1)
584public override void VisitDoStatement(DoStatementSyntax node)
Binder\WhileBinder.cs (3)
40var node = (DoStatementSyntax)_syntax; 59condition = ((DoStatementSyntax)_syntax).Condition;
Lowering\Instrumentation\DebugInfoInjector.cs (2)
243var doSyntax = (DoStatementSyntax)original.Syntax;
Syntax.xml.Main.Generated.cs (7)
400public virtual TResult? VisitDoStatement(DoStatementSyntax node) => this.DefaultVisit(node); 1144public virtual void VisitDoStatement(DoStatementSyntax node) => this.DefaultVisit(node); 1887public override SyntaxNode? VisitDoStatement(DoStatementSyntax node) 4309public static DoStatementSyntax DoStatement(SyntaxList<AttributeListSyntax> attributeLists, SyntaxToken doKeyword, StatementSyntax statement, SyntaxToken whileKeyword, SyntaxToken openParenToken, ExpressionSyntax condition, SyntaxToken closeParenToken, SyntaxToken semicolonToken) 4318return (DoStatementSyntax)Syntax.InternalSyntax.SyntaxFactory.DoStatement(attributeLists.Node.ToGreenList<Syntax.InternalSyntax.AttributeListSyntax>(), (Syntax.InternalSyntax.SyntaxToken)doKeyword.Node!, (Syntax.InternalSyntax.StatementSyntax)statement.Green, (Syntax.InternalSyntax.SyntaxToken)whileKeyword.Node!, (Syntax.InternalSyntax.SyntaxToken)openParenToken.Node!, (Syntax.InternalSyntax.ExpressionSyntax)condition.Green, (Syntax.InternalSyntax.SyntaxToken)closeParenToken.Node!, (Syntax.InternalSyntax.SyntaxToken)semicolonToken.Node!).CreateRed(); 4322public static DoStatementSyntax DoStatement(SyntaxList<AttributeListSyntax> attributeLists, StatementSyntax statement, ExpressionSyntax condition) 4326public static DoStatementSyntax DoStatement(StatementSyntax statement, ExpressionSyntax condition)
Syntax.xml.Syntax.Generated.cs (11)
7536public DoStatementSyntax Update(SyntaxList<AttributeListSyntax> attributeLists, SyntaxToken doKeyword, StatementSyntax statement, SyntaxToken whileKeyword, SyntaxToken openParenToken, ExpressionSyntax condition, SyntaxToken closeParenToken, SyntaxToken semicolonToken) 7540var newNode = SyntaxFactory.DoStatement(attributeLists, doKeyword, statement, whileKeyword, openParenToken, condition, closeParenToken, semicolonToken); 7549public new DoStatementSyntax WithAttributeLists(SyntaxList<AttributeListSyntax> attributeLists) => Update(attributeLists, this.DoKeyword, this.Statement, this.WhileKeyword, this.OpenParenToken, this.Condition, this.CloseParenToken, this.SemicolonToken); 7550public DoStatementSyntax WithDoKeyword(SyntaxToken doKeyword) => Update(this.AttributeLists, doKeyword, this.Statement, this.WhileKeyword, this.OpenParenToken, this.Condition, this.CloseParenToken, this.SemicolonToken); 7551public DoStatementSyntax WithStatement(StatementSyntax statement) => Update(this.AttributeLists, this.DoKeyword, statement, this.WhileKeyword, this.OpenParenToken, this.Condition, this.CloseParenToken, this.SemicolonToken); 7552public DoStatementSyntax WithWhileKeyword(SyntaxToken whileKeyword) => Update(this.AttributeLists, this.DoKeyword, this.Statement, whileKeyword, this.OpenParenToken, this.Condition, this.CloseParenToken, this.SemicolonToken); 7553public DoStatementSyntax WithOpenParenToken(SyntaxToken openParenToken) => Update(this.AttributeLists, this.DoKeyword, this.Statement, this.WhileKeyword, openParenToken, this.Condition, this.CloseParenToken, this.SemicolonToken); 7554public DoStatementSyntax WithCondition(ExpressionSyntax condition) => Update(this.AttributeLists, this.DoKeyword, this.Statement, this.WhileKeyword, this.OpenParenToken, condition, this.CloseParenToken, this.SemicolonToken); 7555public DoStatementSyntax WithCloseParenToken(SyntaxToken closeParenToken) => Update(this.AttributeLists, this.DoKeyword, this.Statement, this.WhileKeyword, this.OpenParenToken, this.Condition, closeParenToken, this.SemicolonToken); 7556public DoStatementSyntax WithSemicolonToken(SyntaxToken semicolonToken) => Update(this.AttributeLists, this.DoKeyword, this.Statement, this.WhileKeyword, this.OpenParenToken, this.Condition, this.CloseParenToken, semicolonToken); 7559public new DoStatementSyntax AddAttributeLists(params AttributeListSyntax[] items) => WithAttributeLists(this.AttributeLists.AddRange(items));
Syntax\DoStatementSyntax.cs (2)
11public DoStatementSyntax Update(SyntaxToken doKeyword, StatementSyntax statement, SyntaxToken whileKeyword, SyntaxToken openParenToken, ExpressionSyntax condition, SyntaxToken closeParenToken, SyntaxToken semicolonToken) 20public static DoStatementSyntax DoStatement(SyntaxToken doKeyword, StatementSyntax statement, SyntaxToken whileKeyword, SyntaxToken openParenToken, ExpressionSyntax condition, SyntaxToken closeParenToken, SyntaxToken semicolonToken)
Syntax\LookupPosition.cs (2)
328return ((DoStatementSyntax)statement).DoKeyword; 389return ((DoStatementSyntax)statement).SemicolonToken;
Microsoft.CodeAnalysis.CSharp.CodeStyle (7)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (1)
175(nodeParent is DoStatementSyntax doStatement && doStatement.Condition == node) ||
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SyntaxNodeExtensions.cs (3)
118return node is DoStatementSyntax or 133DoStatementSyntax n => n.Statement, 710DoStatementSyntax n => (n.OpenParenToken, n.CloseParenToken),
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\FormattingHelpers.cs (1)
294DoStatementSyntax doStatement => doStatement.CloseParenToken.Equals(token),
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\Rules\IndentBlockFormattingRule.cs (1)
343if (node is DoStatementSyntax doStatement && doStatement.Statement != null && !(doStatement.Statement is BlockSyntax))
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\Rules\SuppressFormattingRule.cs (1)
142if (node is DoStatementSyntax whileStatementNode)
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (4)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpMoveDeclarationNearReferenceService.cs (1)
39DoStatementSyntax or
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (3)
156DoStatementSyntax doStatement => InferTypeInDoStatement(doStatement), 223DoStatementSyntax doStatement => InferTypeInDoStatement(doStatement, token), 1199private IEnumerable<TypeInferenceInfo> InferTypeInDoStatement(DoStatementSyntax doStatement, SyntaxToken? previousToken = null)
Microsoft.CodeAnalysis.CSharp.EditorFeatures (10)
AutomaticCompletion\AutomaticLineEnderCommandHandler.cs (1)
333or DoStatementSyntax
AutomaticCompletion\AutomaticLineEnderCommandHandler_Helpers.cs (5)
161DoStatementSyntax doStatementNode => AddBraceToDoStatement(services, root, doStatementNode, formattingOptions, statement, cancellationToken), 171DoStatementSyntax doStatementNode, 476DoStatementSyntax doStatementNode => ShouldAddBraceForDoStatement(doStatementNode, caretPosition), 661private static bool ShouldAddBraceForDoStatement(DoStatementSyntax doStatementNode, int caretPosition) 941DoStatementSyntax doStatementNode => doStatementNode.WithStatement(block),
CompleteStatement\CompleteStatementCommandHandler.cs (4)
310if (currentNode is not DoStatementSyntax doStatement) 373targetPosition = caret.Snapshot.GetPoint(((DoStatementSyntax)statementNode).CloseParenToken.Span.End); 541var dostatement = (DoStatementSyntax)currentNode;
Microsoft.CodeAnalysis.CSharp.Emit3.UnitTests (6)
Semantics\OutVarTests.cs (4)
1302reference.Ancestors().OfType<DoStatementSyntax>().Join( 1303decl.Ancestors().OfType<DoStatementSyntax>(), d => d, d => d, (d1, d2) => true).Any()))) 4000var statement = (DoStatementSyntax)SyntaxFactory.ParseStatement(@"
Semantics\PatternMatchingTests_Scope.cs (2)
7530var statement = (DoStatementSyntax)SyntaxFactory.ParseStatement(@"
Microsoft.CodeAnalysis.CSharp.Features (29)
Debugging\CSharpProximityExpressionsService.RelevantExpressionsCollector.cs (1)
38public override void VisitDoStatement(DoStatementSyntax node)
Debugging\CSharpProximityExpressionsService.Worker.cs (2)
196AddExpressionTerms((previousStatement as DoStatementSyntax).Condition, _expressions); 249AddLastStatementOfConstruct((statement as DoStatementSyntax).Statement);
EditAndContinue\BreakpointSpans.cs (2)
615var doStatement = (DoStatementSyntax)statement;
EditAndContinue\CSharpEditAndContinueAnalyzer.cs (8)
229Debug.Assert(position == ((DoStatementSyntax)node).WhileKeyword.SpanStart); 607var doStatement = (DoStatementSyntax)node; 800return AreEquivalentActiveStatements((DoStatementSyntax)oldStatement, (DoStatementSyntax)newStatement); 837private static bool AreEquivalentActiveStatements(DoStatementSyntax oldNode, DoStatementSyntax newNode) 1812return ((DoStatementSyntax)node).DoKeyword.Span;
EditAndContinue\SyntaxComparer.cs (4)
874var leftDo = (DoStatementSyntax)leftNode; 875var rightDo = (DoStatementSyntax)rightNode;
ExtractMethod\CSharpMethodExtractor.CSharpCodeGenerator.CallSiteContainerRewriter.cs (1)
248public override SyntaxNode VisitDoStatement(DoStatementSyntax node)
ExtractMethod\CSharpSelectionValidator.Validator.cs (2)
34DoStatementSyntax or 60DoStatementSyntax or
Highlighting\KeywordHighlighters\LoopHighlighter.cs (2)
43case DoStatementSyntax doStatement: 60private static void HighlightDoStatement(DoStatementSyntax statement, List<TextSpan> spans)
InvertIf\CSharpInvertIfCodeRefactoringProvider.cs (2)
76case DoStatementSyntax: 102CommonForEachStatementSyntax or DoStatementSyntax or WhileStatementSyntax or ForStatementSyntax
Snippets\CSharpDoWhileLoopSnippetProvider.cs (5)
24: AbstractConditionalBlockSnippetProvider<DoStatementSyntax, ExpressionSyntax> 33protected override DoStatementSyntax GenerateStatement(SyntaxGenerator generator, SyntaxContext syntaxContext, InlineExpressionInfo? inlineExpressionInfo) 40protected override ExpressionSyntax GetCondition(DoStatementSyntax node) 43protected override int GetTargetCaretPosition(DoStatementSyntax doStatement, SourceText sourceText) 49protected override Task<Document> AddIndentationToDocumentAsync(Document document, DoStatementSyntax doStatement, CancellationToken cancellationToken)
Microsoft.CodeAnalysis.CSharp.IOperation.UnitTests (3)
IOperation\IOperationTests_IBranchOperation.Extensions.cs (1)
88AssertOuterIsCorrespondingLoopOfInner<DoStatementSyntax, ContinueStatementSyntax>(@"
IOperation\IOperationTests_IWhileUntilLoopStatement.cs (2)
69VerifyOperationTreeForTest<DoStatementSyntax>(source, expectedOperationTree); 1385VerifyOperationTreeAndDiagnosticsForTest<DoStatementSyntax>(source, expectedOperationTree, expectedDiagnostics);
Microsoft.CodeAnalysis.CSharp.Syntax.UnitTests (7)
Generated\Syntax.Test.xml.Generated.cs (5)
10744private static DoStatementSyntax GenerateDoStatement() 12622var node = GenerateDoStatement(); 12632var newNode = node.WithAttributeLists(node.AttributeLists).WithDoKeyword(node.DoKeyword).WithStatement(node.Statement).WithWhileKeyword(node.WhileKeyword).WithOpenParenToken(node.OpenParenToken).WithCondition(node.Condition).WithCloseParenToken(node.CloseParenToken).WithSemicolonToken(node.SemicolonToken); 17591var oldNode = GenerateDoStatement(); 17607var oldNode = GenerateDoStatement();
Parsing\StatementParsingTests.cs (2)
1500var ds = (DoStatementSyntax)statement;
Microsoft.CodeAnalysis.CSharp.Test.Utilities (1)
LocalVariableDeclaratorsCollector.cs (1)
72public override void VisitDoStatement(DoStatementSyntax node)
Microsoft.CodeAnalysis.CSharp.Workspaces (11)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (1)
175(nodeParent is DoStatementSyntax doStatement && doStatement.Condition == node) ||
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SyntaxNodeExtensions.cs (3)
118return node is DoStatementSyntax or 133DoStatementSyntax n => n.Statement, 710DoStatementSyntax n => (n.OpenParenToken, n.CloseParenToken),
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\FormattingHelpers.cs (1)
294DoStatementSyntax doStatement => doStatement.CloseParenToken.Equals(token),
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\Rules\IndentBlockFormattingRule.cs (1)
343if (node is DoStatementSyntax doStatement && doStatement.Statement != null && !(doStatement.Statement is BlockSyntax))
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\Rules\SuppressFormattingRule.cs (1)
142if (node is DoStatementSyntax whileStatementNode)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpMoveDeclarationNearReferenceService.cs (1)
39DoStatementSyntax or
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (3)
156DoStatementSyntax doStatement => InferTypeInDoStatement(doStatement), 223DoStatementSyntax doStatement => InferTypeInDoStatement(doStatement, token), 1199private IEnumerable<TypeInferenceInfo> InferTypeInDoStatement(DoStatementSyntax doStatement, SyntaxToken? previousToken = null)
Roslyn.Diagnostics.CSharp.Analyzers (11)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (1)
175(nodeParent is DoStatementSyntax doStatement && doStatement.Condition == node) ||
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SyntaxNodeExtensions.cs (3)
118return node is DoStatementSyntax or 133DoStatementSyntax n => n.Statement, 710DoStatementSyntax n => (n.OpenParenToken, n.CloseParenToken),
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\FormattingHelpers.cs (1)
294DoStatementSyntax doStatement => doStatement.CloseParenToken.Equals(token),
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\Rules\IndentBlockFormattingRule.cs (1)
343if (node is DoStatementSyntax doStatement && doStatement.Statement != null && !(doStatement.Statement is BlockSyntax))
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\Rules\SuppressFormattingRule.cs (1)
142if (node is DoStatementSyntax whileStatementNode)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpMoveDeclarationNearReferenceService.cs (1)
39DoStatementSyntax or
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (3)
156DoStatementSyntax doStatement => InferTypeInDoStatement(doStatement), 223DoStatementSyntax doStatement => InferTypeInDoStatement(doStatement, token), 1199private IEnumerable<TypeInferenceInfo> InferTypeInDoStatement(DoStatementSyntax doStatement, SyntaxToken? previousToken = null)