96 references to Declaration
Microsoft.CodeAnalysis.CSharp (20)
Binder\ForLoopBinder.cs (7)
33if (_syntax.Declaration != null) 35_syntax.Declaration.Type.VisitRankSpecifiers((rankSpecifier, args) => 46foreach (var vdecl in _syntax.Declaration.Variables) 48var localSymbol = MakeLocal(_syntax.Declaration, vdecl, LocalDeclarationKind.RegularVariable, allowScoped: true); 73if (_syntax.Declaration != null) 75var type = _syntax.Declaration.Type.SkipScoped(out _); 84initializer = originalBinder.BindForOrUsingOrFixedDeclarations(node.Declaration, LocalDeclarationKind.RegularVariable, diagnostics, out _);
Binder\LocalBinderFactory.cs (1)
600VariableDeclarationSyntax declaration = node.Declaration;
Syntax.xml.Main.Generated.cs (1)
1891=> node.Update(VisitList(node.AttributeLists), VisitToken(node.ForKeyword), VisitToken(node.OpenParenToken), (VariableDeclarationSyntax?)Visit(node.Declaration), VisitList(node.Initializers), VisitToken(node.FirstSemicolonToken), (ExpressionSyntax?)Visit(node.Condition), VisitToken(node.SecondSemicolonToken), VisitList(node.Incrementors), VisitToken(node.CloseParenToken), (StatementSyntax?)Visit(node.Statement) ?? throw new ArgumentNullException("statement"));
Syntax.xml.Syntax.Generated.cs (11)
7647if (attributeLists != this.AttributeLists || forKeyword != this.ForKeyword || openParenToken != this.OpenParenToken || declaration != this.Declaration || initializers != this.Initializers || firstSemicolonToken != this.FirstSemicolonToken || condition != this.Condition || secondSemicolonToken != this.SecondSemicolonToken || incrementors != this.Incrementors || closeParenToken != this.CloseParenToken || statement != this.Statement) 7658public new ForStatementSyntax WithAttributeLists(SyntaxList<AttributeListSyntax> attributeLists) => Update(attributeLists, this.ForKeyword, this.OpenParenToken, this.Declaration, this.Initializers, this.FirstSemicolonToken, this.Condition, this.SecondSemicolonToken, this.Incrementors, this.CloseParenToken, this.Statement); 7659public ForStatementSyntax WithForKeyword(SyntaxToken forKeyword) => Update(this.AttributeLists, forKeyword, this.OpenParenToken, this.Declaration, this.Initializers, this.FirstSemicolonToken, this.Condition, this.SecondSemicolonToken, this.Incrementors, this.CloseParenToken, this.Statement); 7660public ForStatementSyntax WithOpenParenToken(SyntaxToken openParenToken) => Update(this.AttributeLists, this.ForKeyword, openParenToken, this.Declaration, this.Initializers, this.FirstSemicolonToken, this.Condition, this.SecondSemicolonToken, this.Incrementors, this.CloseParenToken, this.Statement); 7662public ForStatementSyntax WithInitializers(SeparatedSyntaxList<ExpressionSyntax> initializers) => Update(this.AttributeLists, this.ForKeyword, this.OpenParenToken, this.Declaration, initializers, this.FirstSemicolonToken, this.Condition, this.SecondSemicolonToken, this.Incrementors, this.CloseParenToken, this.Statement); 7663public ForStatementSyntax WithFirstSemicolonToken(SyntaxToken firstSemicolonToken) => Update(this.AttributeLists, this.ForKeyword, this.OpenParenToken, this.Declaration, this.Initializers, firstSemicolonToken, this.Condition, this.SecondSemicolonToken, this.Incrementors, this.CloseParenToken, this.Statement); 7664public ForStatementSyntax WithCondition(ExpressionSyntax? condition) => Update(this.AttributeLists, this.ForKeyword, this.OpenParenToken, this.Declaration, this.Initializers, this.FirstSemicolonToken, condition, this.SecondSemicolonToken, this.Incrementors, this.CloseParenToken, this.Statement); 7665public ForStatementSyntax WithSecondSemicolonToken(SyntaxToken secondSemicolonToken) => Update(this.AttributeLists, this.ForKeyword, this.OpenParenToken, this.Declaration, this.Initializers, this.FirstSemicolonToken, this.Condition, secondSemicolonToken, this.Incrementors, this.CloseParenToken, this.Statement); 7666public ForStatementSyntax WithIncrementors(SeparatedSyntaxList<ExpressionSyntax> incrementors) => Update(this.AttributeLists, this.ForKeyword, this.OpenParenToken, this.Declaration, this.Initializers, this.FirstSemicolonToken, this.Condition, this.SecondSemicolonToken, incrementors, this.CloseParenToken, this.Statement); 7667public ForStatementSyntax WithCloseParenToken(SyntaxToken closeParenToken) => Update(this.AttributeLists, this.ForKeyword, this.OpenParenToken, this.Declaration, this.Initializers, this.FirstSemicolonToken, this.Condition, this.SecondSemicolonToken, this.Incrementors, closeParenToken, this.Statement); 7668public ForStatementSyntax WithStatement(StatementSyntax statement) => Update(this.AttributeLists, this.ForKeyword, this.OpenParenToken, this.Declaration, this.Initializers, this.FirstSemicolonToken, this.Condition, this.SecondSemicolonToken, this.Incrementors, this.CloseParenToken, statement);
Microsoft.CodeAnalysis.CSharp.CodeStyle (1)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\Rules\SpacingFormattingRule.cs (1)
570&& forStatement.Declaration == null
Microsoft.CodeAnalysis.CSharp.EditorFeatures (1)
CompleteStatement\CompleteStatementCommandHandler.cs (1)
445declaration = forStatementSyntax.Declaration;
Microsoft.CodeAnalysis.CSharp.Features (12)
ConvertForToForEach\CSharpConvertForToForEachCodeRefactoringProvider.cs (1)
52if (forStatement is { Declaration.Variables: [{ Initializer: not null } declarator], Condition.RawKind: (int)SyntaxKind.LessThanExpression, Incrementors.Count: 1 })
Debugging\CSharpProximityExpressionsService.RelevantExpressionsCollector.cs (2)
52if (node.Declaration != null) 54AddVariableExpressions(node.Declaration.Variables, _expressions);
EditAndContinue\BreakpointSpans.cs (3)
633if (forStatement.Declaration != null) 636var firstVariable = forStatement.Declaration.Variables.FirstOrDefault(); 637return CreateSpan(default, forStatement.Declaration.Type, firstVariable);
EditAndContinue\SyntaxComparer.cs (2)
1185if (TryComputeLocalsDistance(left.Declaration, right.Declaration, out var localsDistance))
ExtractMethod\CSharpMethodExtractor.CSharpCodeGenerator.CallSiteContainerRewriter.cs (1)
241return node.WithDeclaration(VisitNode(node.Declaration))
ReverseForStatement\CSharpReverseForStatementCodeRefactoringProvider.cs (2)
51var declaration = forStatement.Declaration; 265var variable = forStatement.Declaration!.Variables[0];
Snippets\AbstractCSharpForLoopSnippetProvider.cs (1)
93var declaration = forStatement.Declaration;
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (2)
Compilation\SemanticModelAPITests.cs (1)
209var rxDecl = root.DescendantNodes().OfType<ForStatementSyntax>().Single().Declaration;
Compilation\SemanticModelGetDeclaredSymbolAPITests.cs (1)
60var rxDecl = root.DescendantNodes().OfType<ForStatementSyntax>().Single().Declaration;
Microsoft.CodeAnalysis.CSharp.Syntax.UnitTests (56)
Generated\Syntax.Test.xml.Generated.cs (2)
12644Assert.Null(node.Declaration); 12652var newNode = node.WithAttributeLists(node.AttributeLists).WithForKeyword(node.ForKeyword).WithOpenParenToken(node.OpenParenToken).WithDeclaration(node.Declaration).WithInitializers(node.Initializers).WithFirstSemicolonToken(node.FirstSemicolonToken).WithCondition(node.Condition).WithSecondSemicolonToken(node.SecondSemicolonToken).WithIncrementors(node.Incrementors).WithCloseParenToken(node.CloseParenToken).WithStatement(node.Statement);
Parsing\StatementParsingTests.cs (54)
1530Assert.Null(fs.Declaration); 1557Assert.NotNull(fs.Declaration); 1558Assert.NotNull(fs.Declaration.Type); 1559Assert.Equal("T", fs.Declaration.Type.ToString()); 1560Assert.Equal(1, fs.Declaration.Variables.Count); 1561Assert.NotEqual(default, fs.Declaration.Variables[0].Identifier); 1562Assert.Equal("a", fs.Declaration.Variables[0].Identifier.ToString()); 1563Assert.NotNull(fs.Declaration.Variables[0].Initializer); 1564Assert.NotEqual(default, fs.Declaration.Variables[0].Initializer.EqualsToken); 1565Assert.NotNull(fs.Declaration.Variables[0].Initializer.Value); 1566Assert.Equal("0", fs.Declaration.Variables[0].Initializer.Value.ToString()); 1594Assert.NotNull(fs.Declaration); 1595Assert.NotNull(fs.Declaration.Type); 1596Assert.Equal("var", fs.Declaration.Type.ToString()); 1597Assert.Equal(SyntaxKind.IdentifierName, fs.Declaration.Type.Kind()); 1598Assert.Equal(SyntaxKind.IdentifierToken, ((IdentifierNameSyntax)fs.Declaration.Type).Identifier.Kind()); 1599Assert.Equal(1, fs.Declaration.Variables.Count); 1600Assert.NotEqual(default, fs.Declaration.Variables[0].Identifier); 1601Assert.Equal("a", fs.Declaration.Variables[0].Identifier.ToString()); 1602Assert.NotNull(fs.Declaration.Variables[0].Initializer); 1603Assert.NotEqual(default, fs.Declaration.Variables[0].Initializer.EqualsToken); 1604Assert.NotNull(fs.Declaration.Variables[0].Initializer.Value); 1605Assert.Equal("0", fs.Declaration.Variables[0].Initializer.Value.ToString()); 1633Assert.NotNull(fs.Declaration); 1634Assert.NotNull(fs.Declaration.Type); 1635Assert.Equal("T", fs.Declaration.Type.ToString()); 1636Assert.Equal(2, fs.Declaration.Variables.Count); 1638Assert.NotEqual(default, fs.Declaration.Variables[0].Identifier); 1639Assert.Equal("a", fs.Declaration.Variables[0].Identifier.ToString()); 1640Assert.NotNull(fs.Declaration.Variables[0].Initializer); 1641Assert.NotEqual(default, fs.Declaration.Variables[0].Initializer.EqualsToken); 1642Assert.NotNull(fs.Declaration.Variables[0].Initializer.Value); 1643Assert.Equal("0", fs.Declaration.Variables[0].Initializer.Value.ToString()); 1645Assert.NotEqual(default, fs.Declaration.Variables[1].Identifier); 1646Assert.Equal("b", fs.Declaration.Variables[1].Identifier.ToString()); 1647Assert.NotNull(fs.Declaration.Variables[1].Initializer); 1648Assert.NotEqual(default, fs.Declaration.Variables[1].Initializer.EqualsToken); 1649Assert.NotNull(fs.Declaration.Variables[1].Initializer.Value); 1650Assert.Equal("1", fs.Declaration.Variables[1].Initializer.Value.ToString()); 1742Assert.Null(fs.Declaration); 1771Assert.Null(fs.Declaration); 1801Assert.Null(fs.Declaration); 1831Assert.Null(fs.Declaration); 1861Assert.Null(fs.Declaration); 1892Assert.NotNull(fs.Declaration); 1893Assert.NotNull(fs.Declaration.Type); 1894Assert.Equal("T", fs.Declaration.Type.ToString()); 1895Assert.Equal(1, fs.Declaration.Variables.Count); 1896Assert.NotEqual(default, fs.Declaration.Variables[0].Identifier); 1897Assert.Equal("a", fs.Declaration.Variables[0].Identifier.ToString()); 1898Assert.NotNull(fs.Declaration.Variables[0].Initializer); 1899Assert.NotEqual(default, fs.Declaration.Variables[0].Initializer.EqualsToken); 1900Assert.NotNull(fs.Declaration.Variables[0].Initializer.Value); 1901Assert.Equal("0", fs.Declaration.Variables[0].Initializer.Value.ToString());
Microsoft.CodeAnalysis.CSharp.Workspaces (3)
Rename\LocalConflictVisitor.cs (2)
74if (node.Declaration != null) 76tokens.AddRange(node.Declaration.Variables.Select(v => v.Identifier));
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\Rules\SpacingFormattingRule.cs (1)
570&& forStatement.Declaration == null
Roslyn.Diagnostics.CSharp.Analyzers (1)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\Rules\SpacingFormattingRule.cs (1)
570&& forStatement.Declaration == null