2 types derived from SyntaxNode
Microsoft.CodeAnalysis.Razor.Compiler (2)
Language\Syntax\RazorSyntaxNode.cs (1)
9internal abstract partial class RazorSyntaxNode : SyntaxNode
Language\Syntax\SyntaxList.cs (1)
10internal abstract class SyntaxList(InternalSyntax.SyntaxList green, SyntaxNode parent, int position) : SyntaxNode(green, parent, position)
782 references to SyntaxNode
Microsoft.CodeAnalysis.Razor.Compiler (782)
Language\DefaultDirectiveSyntaxTreePass.cs (4)
42var root = Visit(_syntaxTree.Root); 49public override SyntaxNode? Visit(SyntaxNode? node) 68public override SyntaxNode VisitRazorDirective(RazorDirectiveSyntax node)
Language\DefaultRazorIntermediateNodeLoweringPhase.cs (16)
529protected SourceSpan? BuildSourceSpanFromNode(SyntaxNode node) 688foreach (var child in descendantNodes) 786var markupLiteral = SyntaxFactory.MarkupTextLiteral(node.LiteralTokens).Green.CreateRed(node.Parent, node.Position); 799protected internal void VisitAttributeValue(SyntaxNode node) 834var rewritten = SyntaxFactory.MarkupTextLiteral(builder.ToList()).Green.CreateRed(node.Parent, position); 851var rewritten = SyntaxFactory.MarkupTextLiteral(builder.ToList()).Green.CreateRed(node.Parent, position); 872var rewritten = SyntaxFactory.CSharpExpressionLiteral(builder.ToList(), generator, editHandler).Green.CreateRed(node.Parent, position); 881var rewritten = SyntaxFactory.MarkupTextLiteral(escapedAtTokens).Green.CreateRed(node.Parent, position); 891protected void Combine(HtmlContentIntermediateNode node, SyntaxNode item) 1269var mergedAttribute = SyntaxFactory.MarkupTextLiteral(mergedLiterals).Green.CreateRed(node.Parent, node.Position); 1333SyntaxNode rewritten; 1433var literal = SyntaxFactory.MarkupTextLiteral(literals).Green.CreateRed(node.Parent, node.Position); 1554private void VisitHtmlContent(SyntaxNode node) 1822var rewritten = SyntaxFactory.MarkupTextLiteral(mergedTokens.ToList()).Green.CreateRed(node.Value.Parent, atPosition); 2139if (node.FirstAncestorOrSelf<SyntaxNode>(n => n is MarkupStartTagSyntax || n is MarkupEndTagSyntax) != null) 2163if (node.FirstAncestorOrSelf<SyntaxNode>(n => n is CSharpImplicitExpressionSyntax) == null)
Language\DefaultRazorTagHelperContextDiscoveryPhase.cs (1)
193foreach (var child in node.DescendantNodes())
Language\DirectiveTokenEditHandler.cs (1)
22protected override PartialParseResultInternal CanAcceptChange(SyntaxNode target, SourceChange change)
Language\HtmlNodeOptimizationPass.cs (1)
19var rewritten = whitespaceRewriter.Visit(syntaxTree.Root);
Language\Legacy\AutoCompleteEditHandler.cs (1)
39protected override PartialParseResultInternal CanAcceptChange(SyntaxNode target, SourceChange change)
Language\Legacy\ClassifiedSpanVisitor.cs (12)
22private SyntaxNode? _currentBlock; 357private BlockSaver CommentBlock(SyntaxNode node) 360private BlockSaver DirectiveBlock(SyntaxNode node) 363private BlockSaver ExpressionBlock(SyntaxNode node) 366private BlockSaver HtmlCommentBlock(SyntaxNode node) 369private BlockSaver MarkupBlock(SyntaxNode node) 372private BlockSaver StatementBlock(SyntaxNode node) 375private BlockSaver TagBlock(SyntaxNode node) 378private BlockSaver TemplateBlock(SyntaxNode node) 381private BlockSaver Block(SyntaxNode node, BlockKindInternal kind) 397private readonly SyntaxNode? _previousBlock = visitor._currentBlock; 412private void AddSpan(SyntaxNode node, SpanKindInternal kind)
Language\Legacy\CodeBlockEditHandler.cs (4)
22protected override PartialParseResultInternal CanAcceptChange(SyntaxNode target, SourceChange change) 43internal static bool IsAcceptableReplacement(SyntaxNode target, SourceChange change) 64internal static bool IsAcceptableDeletion(SyntaxNode target, SourceChange change) 80internal static bool ModifiesInvalidContent(SyntaxNode target, SourceChange change)
Language\Legacy\EditResult.cs (2)
12public EditResult(PartialParseResultInternal result, SyntaxNode editedNode) 19public SyntaxNode EditedNode { get; set; }
Language\Legacy\HtmlMarkupParser.cs (1)
2314var red = node.CreateRed();
Language\Legacy\ILegacySyntax.cs (2)
13SyntaxNode Update(ISpanChunkGenerator? chunkGenerator, SpanEditHandler? editHandler); 14SyntaxNode WithEditHandler(SpanEditHandler? editHandler);
Language\Legacy\ImplicitExpressionEditHandler.cs (21)
56protected override PartialParseResultInternal CanAcceptChange(SyntaxNode target, SourceChange change) 125private static bool IsDotlessCommitInsertion(SyntaxNode target, SourceChange change) 131private static bool IsNewDotlessCommitInsertion(SyntaxNode target, SourceChange change) 144private static bool IsSecondaryDotlessCommitInsertion(SyntaxNode target, SourceChange change) 154private static bool IsAcceptableReplace(SyntaxNode target, SourceChange change) 160private bool IsAcceptableIdentifierReplacement(SyntaxNode target, SourceChange change) 211private static bool IsAcceptableDeletion(SyntaxNode target, SourceChange change) 218private static bool IsAcceptableInsertion(SyntaxNode target, SourceChange change) 226internal static bool IsAcceptableDeletionInBalancedParenthesis(SyntaxNode target, SourceChange change) 256internal static bool IsAcceptableInsertionInBalancedParenthesis(SyntaxNode target, SourceChange change) 415private static bool IsAcceptableEndInsertion(SyntaxNode target, SourceChange change) 425private static bool IsAcceptableInnerInsertion(SyntaxNode target, SourceChange change) 437private static bool RemainingIsWhitespace(SyntaxNode target, SourceChange change) 443private PartialParseResultInternal HandleDotlessCommitInsertion(SyntaxNode target) 453private PartialParseResultInternal HandleReplacement(SyntaxNode target, SourceChange change) 474private PartialParseResultInternal HandleDeletion(SyntaxNode target, char previousChar, SourceChange change) 497private PartialParseResultInternal HandleInsertion(SyntaxNode target, char previousChar, SourceChange change) 518private PartialParseResultInternal HandleInsertionAfterIdPart(SyntaxNode target, SourceChange change) 547private PartialParseResultInternal HandleInsertionAfterOpenParenthesis(SyntaxNode target, SourceChange change) 557private PartialParseResultInternal HandleInsertionAfterDot(SyntaxNode target, SourceChange change) 567private PartialParseResultInternal TryAcceptChange(SyntaxNode target, SourceChange change, PartialParseResultInternal acceptResult = PartialParseResultInternal.Accepted)
Language\Legacy\LegacySyntaxNodeExtensions.ChildSyntaxListReversedEnumeratorStack.cs (2)
14/// This is similar to <see cref="SyntaxNode.ChildSyntaxListEnumeratorStack"/>. 27public ChildSyntaxListReversedEnumeratorStack(SyntaxNode node)
Language\Legacy\LegacySyntaxNodeExtensions.cs (25)
26private static readonly ConditionalWeakTable<SyntaxNode, SpanData> s_spanDataTable = new(); 62internal static ISpanChunkGenerator? GetChunkGenerator(this SyntaxNode node) 65public static SpanEditHandler? GetEditHandler(this SyntaxNode node) 69public static SyntaxNode? LocateOwner(this SyntaxNode node, SourceChange change) 102static SyntaxNode? LocateOwnerForSyntaxList(in SyntaxList<RazorSyntaxNode> list, SourceChange change) 115static SyntaxNode? LocateOwnerForChildSyntaxList(in ChildSyntaxList list, SourceChange change) 119if (child.AsNode(out var node) && node.LocateOwner(change) is { } owner) 129public static bool IsTransitionSpanKind(this SyntaxNode node) 138return nodeOrToken.AsNode(out var node) && node.IsMetaCodeSpanKind(); 141public static bool IsMetaCodeSpanKind(this SyntaxNode node) 148public static bool IsCommentSpanKind(this SyntaxNode node) 155public static bool IsCodeSpanKind(this SyntaxNode node) 162public static bool IsMarkupSpanKind(this SyntaxNode node) 169public static bool IsNoneSpanKind(this SyntaxNode node) 176public static bool IsSpanKind(this SyntaxNode node) 182private static IEnumerable<SyntaxNodeOrToken> FlattenSpansInReverse(this SyntaxNode node) 221public static IEnumerable<SyntaxNode> FlattenSpans(this SyntaxNode node) 225foreach (var child in node.DescendantNodes()) 254public static SyntaxNodeOrToken? PreviousSpan(this SyntaxNode node) 267var parent = node.Parent; 291public static SyntaxNodeOrToken? NextSpan(this SyntaxNode node) 304var parent = node.Parent; 307foreach (var span in parent.FlattenSpans())
Language\Legacy\RazorParser.cs (1)
35var root = markupParser.ParseDocument().CreateRed();
Language\Legacy\SpanEditHandler.cs (12)
55public virtual EditResult ApplyChange(SyntaxNode target, SourceChange change) 60public virtual EditResult ApplyChange(SyntaxNode target, SourceChange change, bool force) 76public virtual bool OwnsChange(SyntaxNode target, SourceChange change) 84protected virtual PartialParseResultInternal CanAcceptChange(SyntaxNode target, SourceChange change) 89protected virtual SyntaxNode UpdateSpan(SyntaxNode target, SourceChange change) 98var newTarget = target switch 107_ => Assumed.Unreachable<SyntaxNode>($"The type {target?.GetType().Name} is not a supported span node."), 112protected internal static bool IsAtEndOfFirstLine(SyntaxNode target, SourceChange change) 121protected internal static bool IsEndDeletion(SyntaxNode target, SourceChange change) 129protected internal static bool IsEndReplace(SyntaxNode target, SourceChange change) 134protected internal static bool IsAtEndOfSpan(SyntaxNode target, SourceChange change)
Language\Legacy\Syntax\CSharpEphemeralTextLiteralSyntax.cs (2)
13SyntaxNode ILegacySyntax.Update(ISpanChunkGenerator? chunkGenerator, SpanEditHandler? editHandler) 16SyntaxNode ILegacySyntax.WithEditHandler(SpanEditHandler? editHandler)
Language\Legacy\Syntax\CSharpExpressionLiteralSyntax.cs (2)
13SyntaxNode ILegacySyntax.Update(ISpanChunkGenerator? chunkGenerator, SpanEditHandler? editHandler) 16SyntaxNode ILegacySyntax.WithEditHandler(SpanEditHandler? editHandler)
Language\Legacy\Syntax\CSharpStatementLiteralSyntax.cs (2)
13SyntaxNode ILegacySyntax.Update(ISpanChunkGenerator? chunkGenerator, SpanEditHandler? editHandler) 16SyntaxNode ILegacySyntax.WithEditHandler(SpanEditHandler? editHandler)
Language\Legacy\Syntax\CSharpTransitionSyntax.cs (2)
13SyntaxNode ILegacySyntax.Update(ISpanChunkGenerator? chunkGenerator, SpanEditHandler? editHandler) 16SyntaxNode ILegacySyntax.WithEditHandler(SpanEditHandler? editHandler)
Language\Legacy\Syntax\MarkupEndTagSyntax.cs (2)
13SyntaxNode ILegacySyntax.Update(ISpanChunkGenerator? chunkGenerator, SpanEditHandler? editHandler) 16SyntaxNode ILegacySyntax.WithEditHandler(SpanEditHandler? editHandler)
Language\Legacy\Syntax\MarkupEphemeralTextLiteralSyntax.cs (2)
13SyntaxNode ILegacySyntax.Update(ISpanChunkGenerator? chunkGenerator, SpanEditHandler? editHandler) 16SyntaxNode ILegacySyntax.WithEditHandler(SpanEditHandler? editHandler)
Language\Legacy\Syntax\MarkupStartTagSyntax.cs (2)
13SyntaxNode ILegacySyntax.Update(ISpanChunkGenerator? chunkGenerator, SpanEditHandler? editHandler) 16SyntaxNode ILegacySyntax.WithEditHandler(SpanEditHandler? editHandler)
Language\Legacy\Syntax\MarkupTagHelperEndTagSyntax.cs (2)
13SyntaxNode ILegacySyntax.Update(ISpanChunkGenerator? chunkGenerator, SpanEditHandler? editHandler) 16SyntaxNode ILegacySyntax.WithEditHandler(SpanEditHandler? editHandler)
Language\Legacy\Syntax\MarkupTagHelperStartTagSyntax.cs (2)
13SyntaxNode ILegacySyntax.Update(ISpanChunkGenerator? chunkGenerator, SpanEditHandler? editHandler) 16SyntaxNode ILegacySyntax.WithEditHandler(SpanEditHandler? editHandler)
Language\Legacy\Syntax\MarkupTextLiteralSyntax.cs (2)
16SyntaxNode ILegacySyntax.Update(ISpanChunkGenerator? chunkGenerator, SpanEditHandler? editHandler) 19SyntaxNode ILegacySyntax.WithEditHandler(SpanEditHandler? editHandler)
Language\Legacy\Syntax\MarkupTransitionSyntax.cs (2)
13SyntaxNode ILegacySyntax.Update(ISpanChunkGenerator? chunkGenerator, SpanEditHandler? editHandler) 16SyntaxNode ILegacySyntax.WithEditHandler(SpanEditHandler? editHandler)
Language\Legacy\Syntax\RazorMetaCodeSyntax.cs (2)
13SyntaxNode ILegacySyntax.Update(ISpanChunkGenerator? chunkGenerator, SpanEditHandler? editHandler) 16SyntaxNode ILegacySyntax.WithEditHandler(SpanEditHandler? editHandler)
Language\Legacy\Syntax\UnclassifiedTextLiteralSyntax.cs (2)
13SyntaxNode ILegacySyntax.Update(ISpanChunkGenerator? chunkGenerator, SpanEditHandler? editHandler) 16SyntaxNode ILegacySyntax.WithEditHandler(SpanEditHandler? editHandler)
Language\Legacy\TagHelperAttributeNode.cs (3)
12public TagHelperAttributeNode(string name, SyntaxNode value, AttributeStructure attributeStructure) 20internal TagHelperAttributeNode(string name, SyntaxNode value) 27public SyntaxNode Value { get; }
Language\Legacy\TagHelperBlockRewriter.cs (20)
22var childSpan = startTag.GetLastToken().Parent; 570public override SyntaxNode VisitGenericBlock(GenericBlockSyntax node) 605public override SyntaxNode VisitCSharpTransition(CSharpTransitionSyntax node) 633public override SyntaxNode VisitCSharpImplicitExpression(CSharpImplicitExpressionSyntax node) 661public override SyntaxNode VisitCSharpExplicitExpression(CSharpExplicitExpressionSyntax node) 709public override SyntaxNode VisitRazorMetaCode(RazorMetaCodeSyntax node) 728public override SyntaxNode VisitCSharpStatement(CSharpStatementSyntax node) 735public override SyntaxNode VisitRazorUsingDirective(RazorUsingDirectiveSyntax node) 741public override SyntaxNode VisitRazorDirective(RazorDirectiveSyntax node) 748public override SyntaxNode VisitMarkupElement(MarkupElementSyntax node) 756public override SyntaxNode VisitCSharpExpressionLiteral(CSharpExpressionLiteralSyntax node) 769public override SyntaxNode VisitMarkupLiteralAttributeValue(MarkupLiteralAttributeValueSyntax node) 798public override SyntaxNode VisitMarkupDynamicAttributeValue(MarkupDynamicAttributeValueSyntax node) 818public override SyntaxNode VisitCSharpStatementLiteral(CSharpStatementLiteralSyntax node) 829public override SyntaxNode VisitMarkupTextLiteral(MarkupTextLiteralSyntax node) 841public override SyntaxNode VisitMarkupEphemeralTextLiteral(MarkupEphemeralTextLiteralSyntax node) 885private SyntaxNode ConfigureNonStringAttribute(SyntaxNode node) 919?? Assumed.Unreachable<SyntaxNode>($"Unexpected node type {node.Kind}"); 924?? Assumed.Unreachable<SyntaxNode>($"Unexpected node type {node.Kind}");
Language\Legacy\TagHelperParseTreeRewriter.cs (12)
34var rewritten = rewriter.Visit(syntaxTree.Root); 97public override SyntaxNode VisitMarkupElement(MarkupElementSyntax node) 218public override SyntaxNode VisitMarkupTextLiteral(MarkupTextLiteralSyntax node) 222var tagParent = node.FirstAncestorOrSelf<SyntaxNode>(n => n is MarkupStartTagSyntax || n is MarkupEndTagSyntax); 562private void ValidateParentAllowsContent(SyntaxNode child) 674private static bool IsPartOfStartTag(SyntaxNode node) 677var parent = node.FirstAncestorOrSelf<SyntaxNode>(static n => 685private static bool IsComment(SyntaxNode node) 687var commentParent = node.FirstAncestorOrSelf<SyntaxNode>(
Language\Legacy\WhiteSpaceRewriter.cs (4)
16public override SyntaxNode? Visit(SyntaxNode? node) 32TryRewriteWhitespace(codeBlock, out var rewritten, out var whitespaceLiteral)) 49[NotNullWhen(true)] out SyntaxNode? whitespaceLiteral)
Language\RazorCodeDocumentExtensions.cs (2)
90foreach (var node in tree.Root.DescendantNodes()) 136foreach (var node in tree.Root.DescendantNodes())
Language\RazorSyntaxTree.cs (3)
14internal SyntaxNode Root { get; } 22SyntaxNode root, 48static ImmutableArray<RazorDiagnostic> ComputeAllDiagnostics(ImmutableArray<RazorDiagnostic> treeDiagnostics, SyntaxNode root)
Language\SourceChange.cs (3)
56internal string GetEditedContent(SyntaxNode node) 77internal int GetOffset(SyntaxNode node) 98internal string GetOriginalText(SyntaxNode node)
Language\Syntax\BaseMarkupEndTagSyntax.cs (4)
11private SyntaxNode? _lazyChildren; 17var children = _lazyChildren ?? 24private SyntaxNode ComputeEndTagLegacyChildren() 29using PooledArrayBuilder<SyntaxNode> builder = [];
Language\Syntax\BaseMarkupStartTagSyntax.cs (4)
11private SyntaxNode? _lazyChildren; 19var children = _lazyChildren ?? 42private SyntaxNode ComputeStartTagLegacyChildren() 44using PooledArrayBuilder<SyntaxNode> builder = [];
Language\Syntax\ChildSyntaxList.cs (15)
14private readonly SyntaxNode _node; 17internal ChildSyntaxList(SyntaxNode node) 71internal SyntaxNode Node => _node; 95public SlotData(SyntaxNode node) 108internal static SyntaxNodeOrToken ItemInternal(SyntaxNode node, int index) 119internal static SyntaxNodeOrToken ItemInternal(SyntaxNode node, int index, ref SlotData slotData) 165var red = node.GetNodeSlot(slotIndex); 178var redChild = red.GetNodeSlot(idx); 202/// Locate the node that is a child of the given <see cref="SyntaxNode"/> and contains the given position. 204/// <param name="node">The <see cref="SyntaxNode"/> to search.</param> 212internal static SyntaxNodeOrToken ChildThatContainsPosition(SyntaxNode node, int targetPosition) 245var red = node.GetNodeSlot(slot); 290internal static SyntaxNode? ItemInternalAsNode(SyntaxNode node, int index, ref SlotData slotData) 331var red = node.GetNodeSlot(slotIndex);
Language\Syntax\ChildSyntaxList.Enumerator.cs (6)
16private SyntaxNode _node; 21internal Enumerator(SyntaxNode node, int count) 31internal void InitializeFrom(SyntaxNode node) 87internal SyntaxNode? TryMoveNextAndGetCurrentAsNode() 91var nodeValue = ItemInternalAsNode(_node, _childIndex, ref _slotData); 106internal EnumeratorImpl(SyntaxNode node, int count)
Language\Syntax\ChildSyntaxList.Reversed.cs (4)
16private readonly SyntaxNode _node; 19internal Reversed(SyntaxNode node, int count) 63private readonly SyntaxNode _node; 67internal Enumerator(SyntaxNode node, int count)
Language\Syntax\Generated\Syntax.xml.Internal.Generated.cs (82)
60internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.RazorDocumentSyntax(this, parent, position); 140internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.RazorCommentBlockSyntax(this, parent, position); 202internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.RazorMetaCodeSyntax(this, parent, position); 256internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.GenericBlockSyntax(this, parent, position); 318internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.UnclassifiedTextLiteralSyntax(this, parent, position); 385internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupBlockSyntax(this, parent, position); 447internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupTransitionSyntax(this, parent, position); 509internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupTextLiteralSyntax(this, parent, position); 571internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupEphemeralTextLiteralSyntax(this, parent, position); 625internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupCommentBlockSyntax(this, parent, position); 690internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupMinimizedAttributeBlockSyntax(this, parent, position); 814internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupAttributeBlockSyntax(this, parent, position); 868internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupMiscAttributeContentSyntax(this, parent, position); 939internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupLiteralAttributeValueSyntax(this, parent, position); 1004internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupDynamicAttributeValueSyntax(this, parent, position); 1163internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupElementSyntax(this, parent, position); 1280internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupStartTagSyntax(this, parent, position); 1391internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupEndTagSyntax(this, parent, position); 1479internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupTagHelperElementSyntax(this, parent, position); 1592internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupTagHelperStartTagSyntax(this, parent, position); 1699internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupTagHelperEndTagSyntax(this, parent, position); 1821internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupTagHelperAttributeSyntax(this, parent, position); 1890internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupMinimizedTagHelperAttributeSyntax(this, parent, position); 1944internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupTagHelperAttributeValueSyntax(this, parent, position); 2099internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupTagHelperDirectiveAttributeSyntax(this, parent, position); 2201internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.MarkupMinimizedTagHelperDirectiveAttributeSyntax(this, parent, position); 2268internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.CSharpCodeBlockSyntax(this, parent, position); 2324internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.CSharpTransitionSyntax(this, parent, position); 2386internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.CSharpStatementLiteralSyntax(this, parent, position); 2448internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.CSharpExpressionLiteralSyntax(this, parent, position); 2510internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.CSharpEphemeralTextLiteralSyntax(this, parent, position); 2564internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.CSharpTemplateBlockSyntax(this, parent, position); 2640internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.CSharpStatementSyntax(this, parent, position); 2706internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.CSharpStatementBodySyntax(this, parent, position); 2765internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.CSharpExplicitExpressionSyntax(this, parent, position); 2831internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.CSharpExplicitExpressionBodySyntax(this, parent, position); 2890internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.CSharpImplicitExpressionSyntax(this, parent, position); 2938internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.CSharpImplicitExpressionBodySyntax(this, parent, position); 3014internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.RazorDirectiveSyntax(this, parent, position); 3077internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.RazorUsingDirectiveSyntax(this, parent, position); 3142internal override SyntaxNode CreateRed(SyntaxNode parent, int position) => new Syntax.RazorDirectiveBodySyntax(this, parent, position);
Language\Syntax\Generated\Syntax.xml.Main.Generated.cs (42)
261internal partial class SyntaxRewriter : SyntaxVisitor<SyntaxNode> 263public override SyntaxNode VisitRazorDocument(RazorDocumentSyntax node) 266public override SyntaxNode VisitRazorCommentBlock(RazorCommentBlockSyntax node) 269public override SyntaxNode VisitRazorMetaCode(RazorMetaCodeSyntax node) 272public override SyntaxNode VisitGenericBlock(GenericBlockSyntax node) 275public override SyntaxNode VisitUnclassifiedTextLiteral(UnclassifiedTextLiteralSyntax node) 278public override SyntaxNode VisitMarkupBlock(MarkupBlockSyntax node) 281public override SyntaxNode VisitMarkupTransition(MarkupTransitionSyntax node) 284public override SyntaxNode VisitMarkupTextLiteral(MarkupTextLiteralSyntax node) 287public override SyntaxNode VisitMarkupEphemeralTextLiteral(MarkupEphemeralTextLiteralSyntax node) 290public override SyntaxNode VisitMarkupCommentBlock(MarkupCommentBlockSyntax node) 293public override SyntaxNode VisitMarkupMinimizedAttributeBlock(MarkupMinimizedAttributeBlockSyntax node) 296public override SyntaxNode VisitMarkupAttributeBlock(MarkupAttributeBlockSyntax node) 299public override SyntaxNode VisitMarkupMiscAttributeContent(MarkupMiscAttributeContentSyntax node) 302public override SyntaxNode VisitMarkupLiteralAttributeValue(MarkupLiteralAttributeValueSyntax node) 305public override SyntaxNode VisitMarkupDynamicAttributeValue(MarkupDynamicAttributeValueSyntax node) 308public override SyntaxNode VisitMarkupElement(MarkupElementSyntax node) 311public override SyntaxNode VisitMarkupStartTag(MarkupStartTagSyntax node) 314public override SyntaxNode VisitMarkupEndTag(MarkupEndTagSyntax node) 317public override SyntaxNode VisitMarkupTagHelperElement(MarkupTagHelperElementSyntax node) 320public override SyntaxNode VisitMarkupTagHelperStartTag(MarkupTagHelperStartTagSyntax node) 323public override SyntaxNode VisitMarkupTagHelperEndTag(MarkupTagHelperEndTagSyntax node) 326public override SyntaxNode VisitMarkupTagHelperAttribute(MarkupTagHelperAttributeSyntax node) 329public override SyntaxNode VisitMarkupMinimizedTagHelperAttribute(MarkupMinimizedTagHelperAttributeSyntax node) 332public override SyntaxNode VisitMarkupTagHelperAttributeValue(MarkupTagHelperAttributeValueSyntax node) 335public override SyntaxNode VisitMarkupTagHelperDirectiveAttribute(MarkupTagHelperDirectiveAttributeSyntax node) 338public override SyntaxNode VisitMarkupMinimizedTagHelperDirectiveAttribute(MarkupMinimizedTagHelperDirectiveAttributeSyntax node) 341public override SyntaxNode VisitCSharpCodeBlock(CSharpCodeBlockSyntax node) 344public override SyntaxNode VisitCSharpTransition(CSharpTransitionSyntax node) 347public override SyntaxNode VisitCSharpStatementLiteral(CSharpStatementLiteralSyntax node) 350public override SyntaxNode VisitCSharpExpressionLiteral(CSharpExpressionLiteralSyntax node) 353public override SyntaxNode VisitCSharpEphemeralTextLiteral(CSharpEphemeralTextLiteralSyntax node) 356public override SyntaxNode VisitCSharpTemplateBlock(CSharpTemplateBlockSyntax node) 359public override SyntaxNode VisitCSharpStatement(CSharpStatementSyntax node) 362public override SyntaxNode VisitCSharpStatementBody(CSharpStatementBodySyntax node) 365public override SyntaxNode VisitCSharpExplicitExpression(CSharpExplicitExpressionSyntax node) 368public override SyntaxNode VisitCSharpExplicitExpressionBody(CSharpExplicitExpressionBodySyntax node) 371public override SyntaxNode VisitCSharpImplicitExpression(CSharpImplicitExpressionSyntax node) 374public override SyntaxNode VisitCSharpImplicitExpressionBody(CSharpImplicitExpressionBodySyntax node) 377public override SyntaxNode VisitRazorDirective(RazorDirectiveSyntax node) 380public override SyntaxNode VisitRazorUsingDirective(RazorUsingDirectiveSyntax node) 383public override SyntaxNode VisitRazorDirectiveBody(RazorDirectiveBodySyntax node)
Language\Syntax\Generated\Syntax.xml.Syntax.Generated.cs (142)
11internal RazorBlockSyntax(GreenNode green, SyntaxNode parent, int position) 28internal RazorDocumentSyntax(GreenNode green, SyntaxNode parent, int position) 36internal override SyntaxNode GetNodeSlot(int index) => index == 0 ? GetRedAtZero(ref this._document) : null; 38internal override SyntaxNode GetCachedSlot(int index) => index == 0 ? this._document : null; 63internal RazorCommentBlockSyntax(GreenNode green, SyntaxNode parent, int position) 74internal override SyntaxNode GetNodeSlot(int index) => null; 76internal override SyntaxNode GetCachedSlot(int index) => null; 104internal RazorMetaCodeSyntax(GreenNode green, SyntaxNode parent, int position) 120internal override SyntaxNode GetNodeSlot(int index) => null; 122internal override SyntaxNode GetCachedSlot(int index) => null; 150private SyntaxNode _children; 152internal GenericBlockSyntax(GreenNode green, SyntaxNode parent, int position) 159internal override SyntaxNode GetNodeSlot(int index) => index == 0 ? GetRedAtZero(ref this._children) : null; 161internal override SyntaxNode GetCachedSlot(int index) => index == 0 ? this._children : null; 189internal UnclassifiedTextLiteralSyntax(GreenNode green, SyntaxNode parent, int position) 205internal override SyntaxNode GetNodeSlot(int index) => null; 207internal override SyntaxNode GetCachedSlot(int index) => null; 235internal MarkupSyntaxNode(GreenNode green, SyntaxNode parent, int position) 243private SyntaxNode _children; 245internal MarkupBlockSyntax(GreenNode green, SyntaxNode parent, int position) 252internal override SyntaxNode GetNodeSlot(int index) => index == 0 ? GetRedAtZero(ref this._children) : null; 254internal override SyntaxNode GetCachedSlot(int index) => index == 0 ? this._children : null; 282internal MarkupTransitionSyntax(GreenNode green, SyntaxNode parent, int position) 298internal override SyntaxNode GetNodeSlot(int index) => null; 300internal override SyntaxNode GetCachedSlot(int index) => null; 328internal MarkupTextLiteralSyntax(GreenNode green, SyntaxNode parent, int position) 344internal override SyntaxNode GetNodeSlot(int index) => null; 346internal override SyntaxNode GetCachedSlot(int index) => null; 374internal MarkupEphemeralTextLiteralSyntax(GreenNode green, SyntaxNode parent, int position) 390internal override SyntaxNode GetNodeSlot(int index) => null; 392internal override SyntaxNode GetCachedSlot(int index) => null; 420private SyntaxNode _children; 422internal MarkupCommentBlockSyntax(GreenNode green, SyntaxNode parent, int position) 429internal override SyntaxNode GetNodeSlot(int index) => index == 0 ? GetRedAtZero(ref this._children) : null; 431internal override SyntaxNode GetCachedSlot(int index) => index == 0 ? this._children : null; 462internal MarkupMinimizedAttributeBlockSyntax(GreenNode green, SyntaxNode parent, int position) 470internal override SyntaxNode GetNodeSlot(int index) 478internal override SyntaxNode GetCachedSlot(int index) 518internal MarkupAttributeBlockSyntax(GreenNode green, SyntaxNode parent, int position) 531internal override SyntaxNode GetNodeSlot(int index) 543internal override SyntaxNode GetCachedSlot(int index) 585private SyntaxNode _children; 587internal MarkupMiscAttributeContentSyntax(GreenNode green, SyntaxNode parent, int position) 594internal override SyntaxNode GetNodeSlot(int index) => index == 0 ? GetRedAtZero(ref this._children) : null; 596internal override SyntaxNode GetCachedSlot(int index) => index == 0 ? this._children : null; 625internal MarkupLiteralAttributeValueSyntax(GreenNode green, SyntaxNode parent, int position) 633internal override SyntaxNode GetNodeSlot(int index) 641internal override SyntaxNode GetCachedSlot(int index) 675internal MarkupDynamicAttributeValueSyntax(GreenNode green, SyntaxNode parent, int position) 683internal override SyntaxNode GetNodeSlot(int index) 691internal override SyntaxNode GetCachedSlot(int index) 722internal BaseMarkupStartTagSyntax(GreenNode green, SyntaxNode parent, int position) 761internal BaseMarkupEndTagSyntax(GreenNode green, SyntaxNode parent, int position) 800internal BaseMarkupElementSyntax(GreenNode green, SyntaxNode parent, int position) 817private SyntaxNode _body; 820internal MarkupElementSyntax(GreenNode green, SyntaxNode parent, int position) 829internal override SyntaxNode GetNodeSlot(int index) 838internal override SyntaxNode GetCachedSlot(int index) 873private SyntaxNode _attributes; 875internal MarkupStartTagSyntax(GreenNode green, SyntaxNode parent, int position) 904internal override SyntaxNode GetNodeSlot(int index) => index == 3 ? GetRed(ref this._attributes, 3) : null; 906internal override SyntaxNode GetCachedSlot(int index) => index == 3 ? this._attributes : null; 949internal MarkupEndTagSyntax(GreenNode green, SyntaxNode parent, int position) 971internal override SyntaxNode GetNodeSlot(int index) => index == 4 ? GetRed(ref this._miscAttributeContent, 4) : null; 973internal override SyntaxNode GetCachedSlot(int index) => index == 4 ? this._miscAttributeContent : null; 1019private SyntaxNode _body; 1022internal MarkupTagHelperElementSyntax(GreenNode green, SyntaxNode parent, int position) 1032internal override SyntaxNode GetNodeSlot(int index) 1041internal override SyntaxNode GetCachedSlot(int index) 1077private SyntaxNode _attributes; 1079internal MarkupTagHelperStartTagSyntax(GreenNode green, SyntaxNode parent, int position) 1107internal override SyntaxNode GetNodeSlot(int index) => index == 3 ? GetRed(ref this._attributes, 3) : null; 1109internal override SyntaxNode GetCachedSlot(int index) => index == 3 ? this._attributes : null; 1151internal MarkupTagHelperEndTagSyntax(GreenNode green, SyntaxNode parent, int position) 1172internal override SyntaxNode GetNodeSlot(int index) => index == 4 ? GetRed(ref this._miscAttributeContent, 4) : null; 1174internal override SyntaxNode GetCachedSlot(int index) => index == 4 ? this._miscAttributeContent : null; 1225internal MarkupTagHelperAttributeSyntax(GreenNode green, SyntaxNode parent, int position) 1239internal override SyntaxNode GetNodeSlot(int index) 1251internal override SyntaxNode GetCachedSlot(int index) 1299internal MarkupMinimizedTagHelperAttributeSyntax(GreenNode green, SyntaxNode parent, int position) 1308internal override SyntaxNode GetNodeSlot(int index) 1316internal override SyntaxNode GetCachedSlot(int index) 1350private SyntaxNode _children; 1352internal MarkupTagHelperAttributeValueSyntax(GreenNode green, SyntaxNode parent, int position) 1359internal override SyntaxNode GetNodeSlot(int index) => index == 0 ? GetRedAtZero(ref this._children) : null; 1361internal override SyntaxNode GetCachedSlot(int index) => index == 0 ? this._children : null; 1399internal MarkupTagHelperDirectiveAttributeSyntax(GreenNode green, SyntaxNode parent, int position) 1416internal override SyntaxNode GetNodeSlot(int index) 1431internal override SyntaxNode GetCachedSlot(int index) 1490internal MarkupMinimizedTagHelperDirectiveAttributeSyntax(GreenNode green, SyntaxNode parent, int position) 1502internal override SyntaxNode GetNodeSlot(int index) 1513internal override SyntaxNode GetCachedSlot(int index) 1555internal CSharpSyntaxNode(GreenNode green, SyntaxNode parent, int position) 1563private SyntaxNode _children; 1565internal CSharpCodeBlockSyntax(GreenNode green, SyntaxNode parent, int position) 1572internal override SyntaxNode GetNodeSlot(int index) => index == 0 ? GetRedAtZero(ref this._children) : null; 1574internal override SyntaxNode GetCachedSlot(int index) => index == 0 ? this._children : null; 1602internal CSharpTransitionSyntax(GreenNode green, SyntaxNode parent, int position) 1611internal override SyntaxNode GetNodeSlot(int index) => null; 1613internal override SyntaxNode GetCachedSlot(int index) => null; 1639internal CSharpStatementLiteralSyntax(GreenNode green, SyntaxNode parent, int position) 1655internal override SyntaxNode GetNodeSlot(int index) => null; 1657internal override SyntaxNode GetCachedSlot(int index) => null; 1685internal CSharpExpressionLiteralSyntax(GreenNode green, SyntaxNode parent, int position) 1701internal override SyntaxNode GetNodeSlot(int index) => null; 1703internal override SyntaxNode GetCachedSlot(int index) => null; 1731internal CSharpEphemeralTextLiteralSyntax(GreenNode green, SyntaxNode parent, int position) 1747internal override SyntaxNode GetNodeSlot(int index) => null; 1749internal override SyntaxNode GetCachedSlot(int index) => null; 1777private SyntaxNode _children; 1779internal CSharpTemplateBlockSyntax(GreenNode green, SyntaxNode parent, int position) 1786internal override SyntaxNode GetNodeSlot(int index) => index == 0 ? GetRedAtZero(ref this._children) : null; 1788internal override SyntaxNode GetCachedSlot(int index) => index == 0 ? this._children : null; 1816internal CSharpRazorBlockSyntax(GreenNode green, SyntaxNode parent, int position) 1835internal CSharpStatementSyntax(GreenNode green, SyntaxNode parent, int position) 1843internal override SyntaxNode GetNodeSlot(int index) 1851internal override SyntaxNode GetCachedSlot(int index) 1888internal CSharpStatementBodySyntax(GreenNode green, SyntaxNode parent, int position) 1897internal override SyntaxNode GetNodeSlot(int index) 1906internal override SyntaxNode GetCachedSlot(int index) 1948internal CSharpExplicitExpressionSyntax(GreenNode green, SyntaxNode parent, int position) 1956internal override SyntaxNode GetNodeSlot(int index) 1964internal override SyntaxNode GetCachedSlot(int index) 2001internal CSharpExplicitExpressionBodySyntax(GreenNode green, SyntaxNode parent, int position) 2010internal override SyntaxNode GetNodeSlot(int index) 2019internal override SyntaxNode GetCachedSlot(int index) 2061internal CSharpImplicitExpressionSyntax(GreenNode green, SyntaxNode parent, int position) 2069internal override SyntaxNode GetNodeSlot(int index) 2077internal override SyntaxNode GetCachedSlot(int index) 2112internal CSharpImplicitExpressionBodySyntax(GreenNode green, SyntaxNode parent, int position) 2119internal override SyntaxNode GetNodeSlot(int index) => index == 0 ? GetRedAtZero(ref this._csharpCode) : null; 2121internal override SyntaxNode GetCachedSlot(int index) => index == 0 ? this._csharpCode : null; 2147internal BaseRazorDirectiveSyntax(GreenNode green, SyntaxNode parent, int position) 2161internal RazorDirectiveSyntax(GreenNode green, SyntaxNode parent, int position) 2170internal override SyntaxNode GetNodeSlot(int index) 2178internal override SyntaxNode GetCachedSlot(int index) 2215internal RazorUsingDirectiveSyntax(GreenNode green, SyntaxNode parent, int position) 2224internal override SyntaxNode GetNodeSlot(int index) 2232internal override SyntaxNode GetCachedSlot(int index) 2269internal RazorDirectiveBodySyntax(GreenNode green, SyntaxNode parent, int position) 2277internal override SyntaxNode GetNodeSlot(int index) 2285internal override SyntaxNode GetCachedSlot(int index)
Language\Syntax\GreenNode.cs (3)
294public SyntaxNode CreateRed() 299internal abstract SyntaxNode CreateRed(SyntaxNode? parent, int position);
Language\Syntax\GreenNodeExtensions.cs (1)
13internal static InternalSyntax.SyntaxList<T> ToGreenList<T>(this SyntaxNode node) where T : GreenNode
Language\Syntax\InternalSyntax\SyntaxList.cs (6)
216internal override SyntaxNode CreateRed(SyntaxNode parent, int position) 278internal override SyntaxNode CreateRed(SyntaxNode parent, int position) 339internal override SyntaxNode CreateRed(SyntaxNode parent, int position)
Language\Syntax\InternalSyntax\SyntaxToken.cs (3)
23internal override SyntaxNode CreateRed(SyntaxNode? parent, int position) 25return Assumed.Unreachable<SyntaxNode>();
Language\Syntax\RazorSyntaxNode.cs (11)
11public RazorSyntaxNode(GreenNode green, SyntaxNode parent, int position) 25protected internal override SyntaxNode ReplaceCore<TNode>( 27Func<TNode, TNode, SyntaxNode>? computeReplacementNode = null, 32protected internal override SyntaxNode ReplaceNodeInListCore(SyntaxNode originalNode, IEnumerable<SyntaxNode> replacementNodes) 35protected internal override SyntaxNode InsertNodesInListCore(SyntaxNode nodeInList, IEnumerable<SyntaxNode> nodesToInsert, bool insertBefore) 38protected internal override SyntaxNode ReplaceTokenInListCore(SyntaxToken originalToken, IEnumerable<SyntaxToken> newTokens) 41protected internal override SyntaxNode InsertTokensInListCore(SyntaxToken originalToken, IEnumerable<SyntaxToken> newTokens, bool insertBefore)
Language\Syntax\SyntaxBuilderExtensions.cs (58)
15where TNode : SyntaxNode 92where TNode : SyntaxNode 131/// Produces a <see cref="SyntaxNode"/> for a <see cref="SyntaxList"/> from the 134public static SyntaxNode? ToListNode<TNode>(ref readonly this PooledArrayBuilder<TNode> builder) 135where TNode : SyntaxNode 139/// Produces a <see cref="SyntaxNode"/> with the given <paramref name="parent"/> 142public static SyntaxNode? ToListNode<TNode>( 143ref readonly this PooledArrayBuilder<TNode> builder, SyntaxNode parent) 144where TNode : SyntaxNode 148/// Produces a <see cref="SyntaxNode"/> with the given <paramref name="parent"/> 152public static SyntaxNode? ToListNode<TNode>( 153ref readonly this PooledArrayBuilder<TNode> builder, SyntaxNode? parent, int position) 154where TNode : SyntaxNode 160/// Produces a <see cref="SyntaxNode"/> for a <see cref="SyntaxList"/> from the 163public static SyntaxNode? ToListNode(ref readonly this PooledArrayBuilder<SyntaxToken> builder) 167/// Produces a <see cref="SyntaxNode"/> with the given <paramref name="parent"/> 170public static SyntaxNode? ToListNode( 171ref readonly this PooledArrayBuilder<SyntaxToken> builder, SyntaxNode parent) 175/// Produces a <see cref="SyntaxNode"/> with the given <paramref name="parent"/> 179public static SyntaxNode? ToListNode( 180ref readonly this PooledArrayBuilder<SyntaxToken> builder, SyntaxNode? parent, int position) 186/// Produces a <see cref="SyntaxNode"/> for a <see cref="SyntaxList"/> from the 207public static SyntaxNode? ToListNodeAndClear<TNode>(ref this PooledArrayBuilder<TNode> builder) 208where TNode : SyntaxNode 212/// Produces a <see cref="SyntaxNode"/> with the given <paramref name="parent"/> 234public static SyntaxNode? ToListNodeAndClear<TNode>( 235ref this PooledArrayBuilder<TNode> builder, SyntaxNode parent) 236where TNode : SyntaxNode 238var result = builder.ToListNode(parent, parent.Position); 245/// Produces a <see cref="SyntaxNode"/> with the given <paramref name="parent"/> 267public static SyntaxNode? ToListNodeAndClear<TNode>( 268ref this PooledArrayBuilder<TNode> builder, SyntaxNode? parent, int position) 269where TNode : SyntaxNode 271var result = builder.ToListNode(parent, position); 278/// Produces a <see cref="SyntaxNode"/> for a <see cref="SyntaxList"/> from the 299public static SyntaxNode? ToListNodeAndClear(ref this PooledArrayBuilder<SyntaxToken> builder) 303/// Produces a <see cref="SyntaxNode"/> with the given <paramref name="parent"/> 325public static SyntaxNode? ToListNodeAndClear( 326ref this PooledArrayBuilder<SyntaxToken> builder, SyntaxNode parent) 328var result = builder.ToListNode(parent, parent.Position); 335/// Produces a <see cref="SyntaxNode"/> with the given <paramref name="parent"/> 357public static SyntaxNode? ToListNodeAndClear( 358ref this PooledArrayBuilder<SyntaxToken> builder, SyntaxNode? parent, int position) 360var result = builder.ToListNode(parent, position); 370where TNode : SyntaxNode 378ref readonly this PooledArrayBuilder<TNode> builder, SyntaxNode parent) 379where TNode : SyntaxNode 387ref readonly this PooledArrayBuilder<TNode> builder, SyntaxNode? parent, int position) 388where TNode : SyntaxNode 404ref readonly this PooledArrayBuilder<SyntaxToken> builder, SyntaxNode parent) 412ref readonly this PooledArrayBuilder<SyntaxToken> builder, SyntaxNode? parent, int position, int index) 439where TNode : SyntaxNode 465ref this PooledArrayBuilder<TNode> builder, SyntaxNode parent) 466where TNode : SyntaxNode 492ref this PooledArrayBuilder<TNode> builder, SyntaxNode? parent, int position) 493where TNode : SyntaxNode 548ref this PooledArrayBuilder<SyntaxToken> builder, SyntaxNode parent) 574ref this PooledArrayBuilder<SyntaxToken> builder, SyntaxNode? parent, int position, int index)
Language\Syntax\SyntaxFactory.cs (8)
19SyntaxKind kind, SyntaxNode? parent, int position, params RazorDiagnostic[] diagnostics) 23SyntaxKind kind, string content, SyntaxNode? parent, int position, params RazorDiagnostic[] diagnostics) 27SyntaxKind kind, SyntaxNode? parent, int position, int index, params RazorDiagnostic[] diagnostics) 31SyntaxKind kind, string content, SyntaxNode? parent, int position, int index, params RazorDiagnostic[] diagnostics) 38where TNode : SyntaxNode 42where TNode : SyntaxNode 46where TNode : SyntaxNode 50where TNode : SyntaxNode
Language\Syntax\SyntaxList.cs (34)
10internal abstract class SyntaxList(InternalSyntax.SyntaxList green, SyntaxNode parent, int position) : SyntaxNode(green, parent, position) 13where TNode : SyntaxNode 27where TNode : SyntaxNode 61protected internal override SyntaxNode ReplaceCore<TNode>( 63Func<TNode, TNode, SyntaxNode>? computeReplacementNode = null, 66=> Assumed.Unreachable<SyntaxNode>(); 68protected internal override SyntaxNode ReplaceNodeInListCore(SyntaxNode originalNode, IEnumerable<SyntaxNode> replacementNodes) 69=> Assumed.Unreachable<SyntaxNode>(); 71protected internal override SyntaxNode InsertNodesInListCore(SyntaxNode nodeInList, IEnumerable<SyntaxNode> nodesToInsert, bool insertBefore) 72=> Assumed.Unreachable<SyntaxNode>(); 74protected internal override SyntaxNode ReplaceTokenInListCore(SyntaxToken originalToken, IEnumerable<SyntaxToken> newTokens) 75=> Assumed.Unreachable<SyntaxNode>(); 77protected internal override SyntaxNode InsertTokensInListCore(SyntaxToken originalToken, IEnumerable<SyntaxToken> newTokens, bool insertBefore) 78=> Assumed.Unreachable<SyntaxNode>(); 82private SyntaxNode? _child0; 83private SyntaxNode? _child1; 85internal WithTwoChildren(InternalSyntax.SyntaxList green, SyntaxNode parent, int position) 90internal override SyntaxNode? GetNodeSlot(int index) 98internal override SyntaxNode? GetCachedSlot(int index) 109private SyntaxNode? _child0; 110private SyntaxNode? _child1; 111private SyntaxNode? _child2; 113internal WithThreeChildren(InternalSyntax.SyntaxList green, SyntaxNode parent, int position) 118internal override SyntaxNode? GetNodeSlot(int index) 127internal override SyntaxNode? GetCachedSlot(int index) 139private readonly ArrayElement<SyntaxNode?>[] _children; 141internal WithManyChildren(InternalSyntax.SyntaxList green, SyntaxNode parent, int position) 144_children = new ArrayElement<SyntaxNode?>[green.SlotCount]; 147internal override SyntaxNode? GetNodeSlot(int index) 150internal override SyntaxNode? GetCachedSlot(int index)
Language\Syntax\SyntaxList`1.cs (9)
15internal readonly partial struct SyntaxList<TNode>(SyntaxNode? node) : IReadOnlyList<TNode>, IEquatable<SyntaxList<TNode>> 16where TNode : SyntaxNode 20internal SyntaxNode? Node { get; } = node; 27: this((SyntaxNode?)node) 41private static SyntaxNode? CreateRedListNode(ReadOnlySpan<TNode> nodes) 54private static SyntaxNode? CreateRedListNode(IEnumerable<TNode> nodes) 96private SyntaxNode? ItemInternal(int index) 508public static implicit operator SyntaxList<TNode>(SyntaxList<SyntaxNode> nodes) 511public static implicit operator SyntaxList<SyntaxNode>(SyntaxList<TNode> nodes)
Language\Syntax\SyntaxList`1.Enumerator.cs (1)
11where TNode : SyntaxNode
Language\Syntax\SyntaxNavigator.cs (6)
22internal static SyntaxToken GetFirstToken(SyntaxNode current, bool includeZeroWidth) 27internal static SyntaxToken GetLastToken(SyntaxNode current, bool includeZeroWidth) 42internal static SyntaxToken GetFirstToken(SyntaxNode current, Func<SyntaxToken, bool>? predicate) 86internal static SyntaxToken GetLastToken(SyntaxNode current, Func<SyntaxToken, bool> predicate) 173internal static SyntaxToken GetNextToken(SyntaxNode node, Func<SyntaxToken, bool>? predicate) 257internal static SyntaxToken GetPreviousToken(SyntaxNode node, Func<SyntaxToken, bool> predicate)
Language\Syntax\SyntaxNode.cs (49)
15internal abstract partial class SyntaxNode(GreenNode green, SyntaxNode parent, int position) 18public SyntaxNode Parent { get; } = parent; 41internal abstract SyntaxNode? GetNodeSlot(int index); 43internal abstract SyntaxNode? GetCachedSlot(int index); 45internal SyntaxNode? GetRed(ref SyntaxNode? field, int slot) 47var result = field; 63internal SyntaxNode? GetRedAtZero(ref SyntaxNode? field) 65var result = field; 81where T : SyntaxNode 100where T : SyntaxNode 117internal SyntaxNode? GetRedElement(ref SyntaxNode? element, int slot) 121var result = element; 165var prevSibling = GetCachedSlot(index); 224public IEnumerable<SyntaxNode> ChildNodes() 252public IEnumerable<SyntaxNode> Ancestors() 258public IEnumerable<SyntaxNode> AncestorsAndSelf() 260for (var node = this; node != null; node = node.Parent) 270where TNode : SyntaxNode 272for (var node = this; node != null; node = node.Parent) 287public IEnumerable<SyntaxNode> DescendantNodes(Func<SyntaxNode, bool>? descendIntoChildren = null) 297public IEnumerable<SyntaxNode> DescendantNodes(TextSpan span, Func<SyntaxNode, bool>? descendIntoChildren = null) 306public IEnumerable<SyntaxNode> DescendantNodesAndSelf(Func<SyntaxNode, bool>? descendIntoChildren = null) 316public IEnumerable<SyntaxNode> DescendantNodesAndSelf(TextSpan span, Func<SyntaxNode, bool>? descendIntoChildren = null) 325public IEnumerable<SyntaxNodeOrToken> DescendantNodesAndTokens(Func<SyntaxNode, bool>? descendIntoChildren = null) 335public IEnumerable<SyntaxNodeOrToken> DescendantNodesAndTokens(TextSpan span, Func<SyntaxNode, bool>? descendIntoChildren = null) 344public IEnumerable<SyntaxNodeOrToken> DescendandNodesAndTokensAndSelf(Func<SyntaxNode, bool>? descendIntoChildren = null) 353public IEnumerable<SyntaxNodeOrToken> DescendandNodesAndTokensAndSelf(TextSpan span, Func<SyntaxNode, bool>? descendIntoChildren = null) 361public IEnumerable<SyntaxToken> DescendantTokens(Func<SyntaxNode, bool>? descendIntoChildren = null) 371public IEnumerable<SyntaxToken> DescendantTokens(TextSpan span, Func<SyntaxNode, bool>? descendIntoChildren = null) 378protected internal abstract SyntaxNode ReplaceCore<TNode>( 380Func<TNode, TNode, SyntaxNode>? computeReplacementNode = null, 383where TNode : SyntaxNode; 385protected internal abstract SyntaxNode ReplaceNodeInListCore(SyntaxNode originalNode, IEnumerable<SyntaxNode> replacementNodes); 386protected internal abstract SyntaxNode InsertNodesInListCore(SyntaxNode nodeInList, IEnumerable<SyntaxNode> nodesToInsert, bool insertBefore); 387protected internal abstract SyntaxNode ReplaceTokenInListCore(SyntaxToken originalToken, IEnumerable<SyntaxToken> newTokens); 388protected internal abstract SyntaxNode InsertTokensInListCore(SyntaxToken originalToken, IEnumerable<SyntaxToken> newTokens, bool insertBefore); 395public bool IsEquivalentTo(SyntaxNode other) 451var node = curNode.AsNode();
Language\Syntax\SyntaxNode.Iterators.cs (11)
14private IEnumerable<SyntaxNode> DescendantNodesImpl(TextSpan span, Func<SyntaxNode, bool>? descendIntoChildren, bool includeSelf) 25var node = stack.TryGetNextAsNodeInSpan(in span); 38private IEnumerable<SyntaxNodeOrToken> DescendantNodesAndTokensImpl(TextSpan span, Func<SyntaxNode, bool>? descendIntoChildren, bool includeSelf) 101public ChildSyntaxListEnumeratorStack(SyntaxNode startingNode, Func<SyntaxNode, bool>? descendIntoChildren) 134public SyntaxNode? TryGetNextAsNodeInSpan(in TextSpan span) 138SyntaxNode? nodeValue; 151public void PushChildren(SyntaxNode node) 164public void PushChildren(SyntaxNode node, Func<SyntaxNode, bool>? descendIntoChildren)
Language\Syntax\SyntaxNodeExtensions.cs (31)
15public static TNode WithDiagnostics<TNode>(this TNode node, params RazorDiagnostic[] diagnostics) where TNode : SyntaxNode 20public static TNode AppendDiagnostic<TNode>(this TNode node, params ReadOnlySpan<RazorDiagnostic> diagnostics) where TNode : SyntaxNode 37where TNode : SyntaxNode 48public static SourceLocation GetSourceLocation(this SyntaxNode node, RazorSourceDocument source) 118public static SourceSpan GetSourceSpan(this SyntaxNode node, RazorSourceDocument source) 145IEnumerable<SyntaxNode> nodes, 146Func<SyntaxNode, SyntaxNode, SyntaxNode> computeReplacementNode, 149where TRoot : SyntaxNode 166public static TRoot ReplaceNodes<TRoot, TNode>(this TRoot root, IEnumerable<TNode> nodes, Func<TNode, TNode, SyntaxNode> computeReplacementNode) 167where TRoot : SyntaxNode 168where TNode : SyntaxNode 180public static TRoot ReplaceNode<TRoot>(this TRoot root, SyntaxNode oldNode, SyntaxNode newNode) 181where TRoot : SyntaxNode 198public static TRoot ReplaceNode<TRoot>(this TRoot root, SyntaxNode oldNode, IEnumerable<SyntaxNode> newNodes) 199where TRoot : SyntaxNode 214where TRoot : SyntaxNode 216return (TRoot)root.ReplaceCore<SyntaxNode>(tokens: tokens, computeReplacementToken: computeReplacementToken); 228where TRoot : SyntaxNode 230return (TRoot)root.ReplaceCore<SyntaxNode>(tokens: [oldToken], computeReplacementToken: (o, r) => newToken); 240public static TRoot InsertNodesBefore<TRoot>(this TRoot root, SyntaxNode nodeInList, IEnumerable<SyntaxNode> newNodes) 241where TRoot : SyntaxNode 253public static TRoot InsertNodesAfter<TRoot>(this TRoot root, SyntaxNode nodeInList, IEnumerable<SyntaxNode> newNodes) 254where TRoot : SyntaxNode 259public static string GetContent<TNode>(this TNode node) where TNode : SyntaxNode 268public override void Visit(SyntaxNode node)
Language\Syntax\SyntaxNodeOrToken.cs (9)
18private readonly SyntaxNode? _nodeOrParent; 32internal SyntaxNodeOrToken(SyntaxNode node) 41internal SyntaxNodeOrToken(SyntaxNode? parent, GreenNode? token, int position, int index) 71public SyntaxNode? Parent => _token != null ? _nodeOrParent : _nodeOrParent?.Parent; 131public SyntaxNode? AsNode() 136internal bool AsNode([NotNullWhen(true)] out SyntaxNode? node) 153if (AsNode(out var node)) 360public static implicit operator SyntaxNodeOrToken(SyntaxNode? node) 376public static explicit operator SyntaxNode?(SyntaxNodeOrToken nodeOrToken)
Language\Syntax\SyntaxReplacer.cs (39)
14internal static SyntaxNode Replace<TNode>( 15SyntaxNode root, 17Func<TNode, TNode, SyntaxNode>? computeReplacementNode = null, 20where TNode : SyntaxNode 36IEnumerable<SyntaxNode>? nodes = null, 37Func<SyntaxNode, SyntaxNode, SyntaxNode>? computeReplacementNode = null, 41var replacer = new Replacer<SyntaxNode>(nodes, computeReplacementNode, tokens, computeReplacementToken); 53private sealed class Replacer<TNode> : SyntaxRewriter where TNode : SyntaxNode 55private static readonly HashSet<SyntaxNode> s_noNodes = []; 58private readonly Func<TNode, TNode, SyntaxNode>? _computeReplacementNode; 61private readonly HashSet<SyntaxNode> _nodeSet; 69Func<TNode, TNode, SyntaxNode>? computeReplacementNode = null, 88foreach (var node in _nodeSet) 144public override SyntaxNode? Visit(SyntaxNode? node) 146var rewritten = node; 200internal static SyntaxNode ReplaceNodeInList(SyntaxNode root, SyntaxNode originalNode, IEnumerable<SyntaxNode> newNodes) 205internal static SyntaxNode InsertNodeInList(SyntaxNode root, SyntaxNode nodeInList, IEnumerable<SyntaxNode> nodesToInsert, bool insertBefore) 210public static SyntaxNode ReplaceTokenInList(SyntaxNode root, SyntaxToken tokenInList, IEnumerable<SyntaxToken> newTokens) 215public static SyntaxNode InsertTokenInList(SyntaxNode root, SyntaxToken tokenInList, IEnumerable<SyntaxToken> newTokens, bool insertBefore) 252public override SyntaxNode? Visit(SyntaxNode? node) 254SyntaxNode? rewritten = node; 270private readonly SyntaxNode _originalNode; 271private readonly IEnumerable<SyntaxNode> _newNodes; 274SyntaxNode originalNode, 275IEnumerable<SyntaxNode> replacementNodes, 284public override SyntaxNode? Visit(SyntaxNode? node)
Language\Syntax\SyntaxRewriter.cs (4)
10internal abstract partial class SyntaxRewriter : SyntaxVisitor<SyntaxNode> 15public override SyntaxNode? Visit(SyntaxNode? node) 25var result = ((RazorSyntaxNode)node).Accept(this);
Language\Syntax\SyntaxSerializer.cs (5)
23public sealed override void Visit(SyntaxNode? node) 44private void WriteNode(SyntaxNode node) 170private void WriteChunkGenerator(SyntaxNode node) 179protected virtual void WriteSpanEditHandlers(SyntaxNode node) 227private static bool ShouldDisplayNodeContent(SyntaxNode node)
Language\Syntax\SyntaxToken.cs (2)
19public SyntaxNode? Parent { get; } 24internal SyntaxToken(SyntaxNode? parent, GreenNode? token, int position, int index)
Language\Syntax\SyntaxTokenList.cs (2)
27private readonly SyntaxNode? _parent; 30internal SyntaxTokenList(SyntaxNode? parent, GreenNode? tokenOrList, int position, int index)
Language\Syntax\SyntaxTokenList.Enumerator.cs (1)
40private readonly SyntaxNode? _parent;
Language\Syntax\SyntaxTokenList.Reversed.cs (1)
40private readonly SyntaxNode? _parent;
Language\Syntax\SyntaxUtilities.cs (2)
87SyntaxNode? parent = null; 141var markupTransition = InternalSyntax.SyntaxFactory
Language\Syntax\SyntaxVisitor.cs (4)
18public virtual TResult? Visit(SyntaxNode? node) 31protected virtual TResult? DefaultVisit(SyntaxNode node) 46public virtual void Visit(SyntaxNode? node) 57public virtual void DefaultVisit(SyntaxNode node)
Language\Syntax\SyntaxWalker.cs (4)
9/// Represents a <see cref="SyntaxVisitor"/> that descends an entire <see cref="SyntaxNode"/> graph 11/// An optional range can be passed in which reduces the <see cref="SyntaxNode"/>s and <see cref="SyntaxToken"/>s 18public override void Visit(SyntaxNode? node) 34public override void DefaultVisit(SyntaxNode node)