ForSyntax
public sealed class ForSyntax@for (var i in sequence) { … } — the keyed reconciler's input.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
This node is associated with the following syntax kinds:
For
Fields and properties (12)
public SyntaxToken ForKeywordpublic SyntaxToken OpenParenTokenpublic SyntaxToken VarKeywordpublic SyntaxToken Identifierpublic SyntaxToken? CommaTokenThe , before an index name, absent when the loop declares none.
public SyntaxToken? IndexThe name bound to the row's position, from @for (var row, i in Rows). ⚠ It is a Signal<int> rather than an int, because a surviving key keeps its region and its body is never re-run — so a captured position would be a lie from the first reorder.
public SyntaxToken InKeywordpublic SyntaxToken Sequencepublic SyntaxToken CloseParenTokenpublic MarkupBlockSyntax Bodypublic SyntaxToken? EmptyKeywordThe @empty of @for (…) { … } @empty { … }, absent when the loop declares no fallback arm.
public MarkupBlockSyntax? EmptyBodyWhat the loop draws instead of rows. ⚠ Two fields rather than the clause node else has: an else chains — its body is an IfSyntax for else if — and an @empty cannot, so a node of its own would buy a public type and no structure.
Methods (16)
public override SyntaxNode? GetSlot(int index)public override void Accept(SyntaxVisitor visitor)public override TResult Accept<TResult>(SyntaxVisitor<TResult> visitor)public ForSyntax Update(SyntaxToken forKeyword, SyntaxToken openParenToken, SyntaxToken varKeyword, SyntaxToken identifier, SyntaxToken? commaToken, SyntaxToken? index, SyntaxToken inKeyword, SyntaxToken sequence, SyntaxToken closeParenToken, MarkupBlockSyntax body, SyntaxToken? emptyKeyword, MarkupBlockSyntax? emptyBody)public ForSyntax WithForKeyword(SyntaxToken forKeyword)public ForSyntax WithOpenParenToken(SyntaxToken openParenToken)public ForSyntax WithVarKeyword(SyntaxToken varKeyword)public ForSyntax WithIdentifier(SyntaxToken identifier)public ForSyntax WithCommaToken(SyntaxToken commaToken)public ForSyntax WithIndex(SyntaxToken index)public ForSyntax WithInKeyword(SyntaxToken inKeyword)public ForSyntax WithSequence(SyntaxToken sequence)public ForSyntax WithCloseParenToken(SyntaxToken closeParenToken)public ForSyntax WithBody(MarkupBlockSyntax body)public ForSyntax WithEmptyKeyword(SyntaxToken emptyKeyword)public ForSyntax WithEmptyBody(MarkupBlockSyntax? emptyBody)
Used by (8)
- BinderVixen.Ui.Markup
- ForSyntaxVixen.Ui.Markup
- ParserTestsVixen.Ui.Markup.Tests
- SyntaxFactoryVixen.Ui.Markup
- SyntaxRewriterVixen.Ui.Markup
- SyntaxVisitorVixen.Ui.Markup
- SyntaxVisitorVixen.Ui.Markup
- VxmlParserVixen.Ui.Markup