1 instantiation of DoStatementSyntax
Microsoft.CodeAnalysis.CSharp (1)
Syntax.xml.Internal.Generated.cs (1)
12166internal 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)
7537public DoStatementSyntax Update(SyntaxList<AttributeListSyntax> attributeLists, SyntaxToken doKeyword, StatementSyntax statement, SyntaxToken whileKeyword, SyntaxToken openParenToken, ExpressionSyntax condition, SyntaxToken closeParenToken, SyntaxToken semicolonToken) 7541var newNode = SyntaxFactory.DoStatement(attributeLists, doKeyword, statement, whileKeyword, openParenToken, condition, closeParenToken, semicolonToken); 7550public new DoStatementSyntax WithAttributeLists(SyntaxList<AttributeListSyntax> attributeLists) => Update(attributeLists, this.DoKeyword, this.Statement, this.WhileKeyword, this.OpenParenToken, this.Condition, this.CloseParenToken, this.SemicolonToken); 7551public DoStatementSyntax WithDoKeyword(SyntaxToken doKeyword) => Update(this.AttributeLists, doKeyword, this.Statement, this.WhileKeyword, this.OpenParenToken, this.Condition, this.CloseParenToken, this.SemicolonToken); 7552public DoStatementSyntax WithStatement(StatementSyntax statement) => Update(this.AttributeLists, this.DoKeyword, statement, this.WhileKeyword, this.OpenParenToken, this.Condition, this.CloseParenToken, this.SemicolonToken); 7553public DoStatementSyntax WithWhileKeyword(SyntaxToken whileKeyword) => Update(this.AttributeLists, this.DoKeyword, this.Statement, whileKeyword, this.OpenParenToken, this.Condition, this.CloseParenToken, this.SemicolonToken); 7554public DoStatementSyntax WithOpenParenToken(SyntaxToken openParenToken) => Update(this.AttributeLists, this.DoKeyword, this.Statement, this.WhileKeyword, openParenToken, this.Condition, this.CloseParenToken, this.SemicolonToken); 7555public DoStatementSyntax WithCondition(ExpressionSyntax condition) => Update(this.AttributeLists, this.DoKeyword, this.Statement, this.WhileKeyword, this.OpenParenToken, condition, this.CloseParenToken, this.SemicolonToken); 7556public DoStatementSyntax WithCloseParenToken(SyntaxToken closeParenToken) => Update(this.AttributeLists, this.DoKeyword, this.Statement, this.WhileKeyword, this.OpenParenToken, this.Condition, closeParenToken, this.SemicolonToken); 7557public DoStatementSyntax WithSemicolonToken(SyntaxToken semicolonToken) => Update(this.AttributeLists, this.DoKeyword, this.Statement, this.WhileKeyword, this.OpenParenToken, this.Condition, this.CloseParenToken, semicolonToken); 7560public 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)
342if (node is DoStatementSyntax { Statement: not null } doStatement && !(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)
327or 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)
1300reference.Ancestors().OfType<DoStatementSyntax>().Join( 1301decl.Ancestors().OfType<DoStatementSyntax>(), d => d, d => d, (d1, d2) => true).Any()))) 3998var 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)
84case DoStatementSyntax: 110CommonForEachStatementSyntax 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)
342if (node is DoStatementSyntax { Statement: not null } doStatement && !(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)
342if (node is DoStatementSyntax { Statement: not null } doStatement && !(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)