38 types derived from IntermediateNode
Microsoft.CodeAnalysis.Razor.Compiler (38)
Language\Intermediate\ComponentAttributeIntermediateNode.cs (1)
12public sealed class ComponentAttributeIntermediateNode : IntermediateNode
Language\Intermediate\ComponentChildContentIntermediateNode.cs (1)
12public sealed class ComponentChildContentIntermediateNode : IntermediateNode
Language\Intermediate\ComponentIntermediateNode.cs (1)
13public sealed class ComponentIntermediateNode : IntermediateNode
Language\Intermediate\ComponentTypeArgumentIntermediateNode.cs (1)
10BoundAttributeDescriptor boundAttribute, CSharpIntermediateToken value) : IntermediateNode
Language\Intermediate\ComponentTypeInferenceMethodIntermediateNode.cs (1)
14public sealed class ComponentTypeInferenceMethodIntermediateNode : IntermediateNode
Language\Intermediate\CSharpCodeAttributeValueIntermediateNode.cs (1)
10public sealed class CSharpCodeAttributeValueIntermediateNode : IntermediateNode
Language\Intermediate\CSharpCodeIntermediateNode.cs (1)
10public sealed class CSharpCodeIntermediateNode : IntermediateNode
Language\Intermediate\CSharpExpressionAttributeValueIntermediateNode.cs (1)
10public sealed class CSharpExpressionAttributeValueIntermediateNode : IntermediateNode
Language\Intermediate\CSharpExpressionIntermediateNode.cs (1)
10public sealed class CSharpExpressionIntermediateNode : IntermediateNode
Language\Intermediate\DirectiveIntermediateNode.cs (1)
11public sealed class DirectiveIntermediateNode : IntermediateNode
Language\Intermediate\DirectiveTokenIntermediateNode.cs (1)
10public sealed class DirectiveTokenIntermediateNode : IntermediateNode
Language\Intermediate\DocumentIntermediateNode.cs (1)
11public sealed class DocumentIntermediateNode : IntermediateNode
Language\Intermediate\ExtensionIntermediateNode.cs (1)
11public abstract class ExtensionIntermediateNode : IntermediateNode
Language\Intermediate\FormNameIntermediateNode.cs (1)
8public sealed class FormNameIntermediateNode : IntermediateNode
Language\Intermediate\HtmlAttributeIntermediateNode.cs (1)
11public sealed class HtmlAttributeIntermediateNode : IntermediateNode
Language\Intermediate\HtmlAttributeValueIntermediateNode.cs (1)
10public sealed class HtmlAttributeValueIntermediateNode : IntermediateNode
Language\Intermediate\HtmlContentIntermediateNode.cs (1)
10public sealed class HtmlContentIntermediateNode : IntermediateNode
Language\Intermediate\IntermediateToken.cs (1)
6public abstract class IntermediateToken : IntermediateNode
Language\Intermediate\MalformedDirectiveIntermediateNode.cs (1)
11public sealed class MalformedDirectiveIntermediateNode : IntermediateNode
Language\Intermediate\MarkupBlockIntermediateNode.cs (1)
10public sealed class MarkupBlockIntermediateNode : IntermediateNode
Language\Intermediate\MarkupElementIntermediateNode.cs (1)
13public sealed class MarkupElementIntermediateNode : IntermediateNode
Language\Intermediate\MemberDeclarationIntermediateNode.cs (1)
6public abstract class MemberDeclarationIntermediateNode : IntermediateNode
Language\Intermediate\NamespaceDeclarationIntermediateNode.cs (1)
6public sealed class NamespaceDeclarationIntermediateNode : IntermediateNode
Language\Intermediate\ReferenceCaptureIntermediateNode.cs (1)
10public sealed class ReferenceCaptureIntermediateNode : IntermediateNode
Language\Intermediate\RenderModeIntermediateNode.cs (1)
9public sealed class RenderModeIntermediateNode : IntermediateNode
Language\Intermediate\SetKeyIntermediateNode.cs (1)
6public sealed class SetKeyIntermediateNode : IntermediateNode
Language\Intermediate\SplatIntermediateNode.cs (1)
6public sealed class SplatIntermediateNode : IntermediateNode
Language\Intermediate\TagHelperBodyIntermediateNode.cs (1)
10public sealed class TagHelperBodyIntermediateNode : IntermediateNode
Language\Intermediate\TagHelperDirectiveAttributeIntermediateNode.cs (1)
8public sealed class TagHelperDirectiveAttributeIntermediateNode : IntermediateNode
Language\Intermediate\TagHelperDirectiveAttributeParameterIntermediateNode.cs (1)
6public sealed class TagHelperDirectiveAttributeParameterIntermediateNode : IntermediateNode
Language\Intermediate\TagHelperHtmlAttributeIntermediateNode.cs (1)
6public sealed class TagHelperHtmlAttributeIntermediateNode : IntermediateNode
Language\Intermediate\TagHelperIntermediateNode.cs (1)
8public sealed class TagHelperIntermediateNode : IntermediateNode
Language\Intermediate\TagHelperPropertyIntermediateNode.cs (1)
6public sealed class TagHelperPropertyIntermediateNode : IntermediateNode
Language\Intermediate\UnresolvedAttributeIntermediateNode.cs (1)
11internal sealed class UnresolvedAttributeIntermediateNode : IntermediateNode
Language\Intermediate\UnresolvedAttributeValueIntermediateNode.cs (1)
19internal sealed class UnresolvedAttributeValueIntermediateNode : IntermediateNode
Language\Intermediate\UnresolvedElementIntermediateNode.cs (1)
14internal sealed class UnresolvedElementIntermediateNode : IntermediateNode
Language\Intermediate\UnresolvedExpressionAttributeValueIntermediateNode.cs (1)
19internal sealed class UnresolvedExpressionAttributeValueIntermediateNode : IntermediateNode
Language\Intermediate\UsingDirectiveIntermediateNode.cs (1)
10public sealed class UsingDirectiveIntermediateNode : IntermediateNode
378 references to IntermediateNode
Microsoft.CodeAnalysis.Razor.Compiler (378)
Language\CodeGeneration\CodeRenderingContext.cs (10)
22private readonly Stack<IntermediateNode> _ancestorStack; 49_ancestorStack = StackPool<IntermediateNode>.Default.Get(); 68StackPool<IntermediateNode>.Default.Return(_ancestorStack); 86public IntermediateNode? Parent 112public void AddSourceMappingFor(IntermediateNode node) 157public void RenderChildren(IntermediateNode node) 171public void RenderChildren(IntermediateNode node, IntermediateNodeWriter writer) 188public void RenderNode(IntermediateNode node) 195public void RenderNode(IntermediateNode node, IntermediateNodeWriter writer) 215public void PushAncestor(IntermediateNode node)
Language\CodeGeneration\IntermediateNodeWriter.cs (3)
106foreach (var child in node.Children) 307foreach (var child in node.Children) 435foreach (var child in node.Children)
Language\Components\ComponentBindLoweringPass.AttributeInfo.cs (2)
12public IntermediateNode Node { get; } 38IntermediateNode node,
Language\Components\ComponentBindLoweringPass.BindEntryKey.cs (3)
11private readonly record struct BindEntryKey(IntermediateNode Parent, string AttributeName) 13public BindEntryKey(IntermediateNode parent, TagHelperDirectiveAttributeIntermediateNode node) 18public BindEntryKey(IntermediateNode parent, TagHelperDirectiveAttributeParameterIntermediateNode node)
Language\Components\ComponentBindLoweringPass.cs (21)
77var parent = reference.Parent; 90var parent = parameterReference.Parent; 124var parent = parameterReference.Parent; 209foreach (var newNode in newNodes) 220using var _ = SpecializedPools.GetPooledReferenceEqualityHashSet<IntermediateNode>(out var parents); 232foreach (var parent in parents) 238private static void ProcessDuplicateAttributes(IntermediateNode node) 312foreach (var child in children) 328static void ReportDiagnosticAndRemoveDuplicates(IntermediateNode node) 380private static ImmutableArray<IntermediateNode> RewriteUsage(IntermediateNode parent, BindEntry bindEntry) 510var targetNode = bindEntry.GetEffectiveBindNode(); 564using var builder = new PooledArrayBuilder<IntermediateNode>(); 652ref PooledArrayBuilder<IntermediateNode> builder, 692IntermediateNode parent, 1015private static IntermediateToken GetAttributeContent(IntermediateNode node) 1047static IntermediateToken GetToken(IntermediateNode node) 1067foreach (var child in children) 1084private static SourceSpan? GetOriginalPropertySpan(IntermediateNode node) 1145public IntermediateNode GetEffectiveBindNode() 1150_ => CantBothBeNullOrNonNull<IntermediateNode>()
Language\Components\ComponentComplexAttributeContentPass.cs (2)
57private static void ProcessAttribute(IntermediateNode parent, IntermediateNode node, string attributeName)
Language\Components\ComponentDiagnosticFactory.cs (1)
97public static RazorDiagnostic Create_UnsupportedComplexContent(IntermediateNode node, string attributeName)
Language\Components\ComponentEventHandlerLoweringPass.cs (7)
39using var _ = SpecializedPools.GetPooledReferenceEqualityHashSet<IntermediateNode>(out var parents); 55foreach (var parent in parents) 93private static void ProcessDuplicates(IntermediateNode parent) 161private static IntermediateNode RewriteUsage(IntermediateNode parent, TagHelperDirectiveAttributeIntermediateNode node) 232private static ImmutableArray<IntermediateToken> GetAttributeContent(IntermediateNode node) 256private static IntermediateNode RewriteParameterUsage(TagHelperDirectiveAttributeParameterIntermediateNode node)
Language\Components\ComponentFormNameLoweringPass.cs (7)
31var parent = reference.Parent; 44static IntermediateNode Rewrite(TagHelperDirectiveAttributeIntermediateNode node) 52static IntermediateNode RewriteForErrorRecovery(TagHelperDirectiveAttributeIntermediateNode node, IntermediateNode parent) 72IntermediateNode result = child is CSharpExpressionIntermediateNode 84static IntermediateNode RewriteCore(TagHelperDirectiveAttributeIntermediateNode node, IntermediateNode replacement)
Language\Components\ComponentGenericTypePass.cs (1)
183foreach (var ancestor in Ancestors)
Language\Components\ComponentInjectDirectivePass.cs (2)
28var directive = visitor.Directives[i]; 53public IList<IntermediateNode> Directives { get; } = [];
Language\Components\ComponentLoweringPass.cs (10)
251foreach (var child in node.Children) 296foreach (var child in node.Children) 397foreach (var child in intermediateNode.Children) 529var child = node.Children[i]; 556bool IsIgnorableWhitespace(IntermediateNode n) 584var child = children[i]; 749public override void VisitDefault(IntermediateNode node) 817IntermediateNode RewriteAttributeContent(IntermediateNode content) 857public override void VisitDefault(IntermediateNode node)
Language\Components\ComponentMarkupBlockPass.cs (5)
74var candidate = reference.Parent.Children[start - 1]; 100var node = reference.Parent.Children[start]; 141public override void VisitDefault(IntermediateNode node) 173foreach (var ancestor in Ancestors) 315foreach (var item in node.Body)
Language\Components\ComponentMarkupDiagnosticPass.cs (3)
28private readonly Dictionary<string, (string name, IntermediateNode node)> _attributes = new(StringComparer.OrdinalIgnoreCase); 32foreach (var child in node.Children) 75foreach (var child in node.Children)
Language\Components\ComponentMarkupEncodingPass.cs (2)
90foreach (var child in node.Children) 126foreach (var child in node.Children)
Language\Components\ComponentNodeWriter.cs (14)
410foreach (var child in node.Component.Children) 659foreach (var child in node.Children) 675foreach (var child in node.Children) 735foreach (var child in node.Children) 767foreach (var child in node.Children) 815foreach (var child in node.Children) 856foreach (var child in node.Body) 1039foreach (var child in node.Children) 1433private static ImmutableArray<HtmlIntermediateToken> GetHtmlTokens(IntermediateNode node) 1439private static ImmutableArray<CSharpIntermediateToken> GetCSharpTokens(IntermediateNode node) 1485foreach (var child in node.Children) 1670private void WriteAttribute(CodeRenderingContext context, IntermediateNode nameExpression, ImmutableArray<IntermediateToken> value) 1692private void BeginWriteAttribute(CodeRenderingContext context, IntermediateNode nameExpression) 1711foreach (var child in node.Children)
Language\Components\ComponentPageDirective.cs (1)
25public IntermediateNode DirectiveNode { get; }
Language\Components\ComponentRenderModeDirectivePass.cs (1)
36var child = directives[0].Node.Children.FirstOrDefault();
Language\Components\ComponentRenderModeLoweringPass.cs (2)
37var expression = node.Children[0] switch 40IntermediateNode token => token
Language\Components\ComponentTemplateDiagnosticPass.cs (1)
53foreach (var ancestor in Ancestors)
Language\Components\ComponentWhitespacePass.cs (2)
89var node = nodes[position]; 177public override void VisitDefault(IntermediateNode node)
Language\DefaultRazorCSharpLoweringPhase.cs (2)
145foreach (var child in node.Children) 369public override void VisitDefault(IntermediateNode node)
Language\DefaultRazorIntermediateNodeLoweringPhase.cs (14)
345IntermediateNode directiveNode; 409IntermediateNode directiveNode; 448IntermediateNode directiveNode; 487IntermediateNode directiveNode; 1007protected void ComputeSourceSpanFromChildren(IntermediateNode node) 1108foreach (var child in element.Children) 1194IntermediateNode legacyFallback = null; 1901IntermediateNode childNode = _insideUnresolvedAttribute 2200public override IntermediateNode Current => _innerBuilder.Current; 2202public override void Add(IntermediateNode node) 2208public override IntermediateNode Build() => _innerBuilder.Build(); 2210public override void Insert(int index, IntermediateNode node) 2216public override IntermediateNode Pop() => _innerBuilder.Pop(); 2218public override void Push(IntermediateNode node)
Language\DefaultTagHelperResolutionPhase.ComponentTagHelperResolver.cs (36)
53IntermediateNode convertedNode, 66IntermediateNode target, 75IntermediateNode target, 99foreach (var child in elementNode.Children) 212IntermediateNode directiveNode = match.IsParameterMatch && directiveAttributeName.HasParameter 239foreach (var vc in htmlAttrChild.Children) 420private static void NormalizeBoundPropertyChildren(IntermediateNode prop, bool wrapLiteralsInCSharpExpression) 422using var newChildren = new PooledArrayBuilder<IntermediateNode>(); 424foreach (var child in prop.Children) 451foreach (var token in csharpExprAttrValue.Children) 524private static void MergeAdjacentCSharpTokens(IntermediateNode node) 528foreach (var child in node.Children) 555foreach (var child in node.Children) 568foreach (var inner in expr.Children) 597IntermediateNode target) 600foreach (var child in htmlAttr.Children) 604foreach (var valueChild in unresolvedLiteral.Children) 626IntermediateNode target) 629foreach (var child in htmlAttr.Children) 637foreach (var valueChild in unresolvedLiteral.Children) 700private static void FlattenDirectiveChildrenToCSharpTokens(IntermediateNode directiveNode) 702using var newChildren = new PooledArrayBuilder<IntermediateNode>(); 703foreach (var child in directiveNode.Children) 707foreach (var token in child.Children) 724foreach (var token in child.Children) 744private static void ConvertExpressionAttributeValuesToCSharpExpression(IntermediateNode node) 748var child = node.Children[i]; 819IntermediateNode parent, 834foreach (var token in children) 876IntermediateNode directiveNode = match.IsParameterMatch && directiveAttributeName.HasParameter 949private static void CopyAsTagHelperAttributeValues(HtmlAttributeIntermediateNode source, IntermediateNode target) 962foreach (var child in source.Children) 990foreach (var child in source.Children) 1060var lastChild = htmlAttr.Children[^1]; 1135public override void ConvertToPlainElement(IntermediateNode parent, int index, UnresolvedElementIntermediateNode elementNode) 1147foreach (var child in elementNode.Children)
Language\DefaultTagHelperResolutionPhase.cs (42)
106private void ResolveElements(IntermediateNode node, TagHelperBinder binder, string prefix, TagHelperCollection.Builder usedHelpers, in ResolutionContext context) 111var child = node.Children[i]; 137IntermediateNode parent, 288var bodyChild = bodyNode.Children[i]; 380IntermediateNode parent, int index, 419private static void MergeAdjacentHtmlContent(IntermediateNode parent) 496foreach (var child in bodyNode.Children) 526foreach (var token in htmlContent.Children) 558private static void ConvertUnresolvedValuesToBasicForm(HtmlAttributeIntermediateNode source, IntermediateNode target) 565foreach (var child in source.Children) 568foreach (var valueChild in unresolvedLiteral.Children) 591foreach (var child in source.Children) 607IntermediateNode exprNode = unresolvedExpr.ContainsExpression 622foreach (var valueChild in unresolvedExpr.Children) 649ref PooledArrayBuilder<IntermediateNode> output, 656foreach (var token in tokens) 672foreach (var token in tokens) 690private static void FlattenToDirectCSharpTokens(IntermediateNode source, IntermediateNode target) 707foreach (var child in source.Children) 719private void UnwrapAllElements(IntermediateNode node, DocumentIntermediateNode documentNode = null) 728var child = node.Children[i]; 778foreach (var child in htmlAttr.Children) 784foreach (var token in child.Children) 837IntermediateNode target, 873IntermediateNode target, 913IntermediateNode target, 935foreach (var token in attrValue.Children) 981private static bool AreAllChildrenOfType<T>(IntermediateNodeCollection children) where T : IntermediateNode 983foreach (var child in children) 1023foreach (var child in htmlAttr.Children) 1032foreach (var valueChild in unresolvedValue.Children) 1061IntermediateNode parent, 1087IntermediateNode parent, 1171private static bool HasOnlyWhitespaceContent(IntermediateNode node) 1173foreach (var child in node.Children) 1184foreach (var hc in htmlContent.Children) 1225IntermediateNode parent, int index, 1246IntermediateNode convertedNode, 1260IntermediateNode target, 1303IntermediateNode target, 1312IntermediateNode target,
Language\DefaultTagHelperResolutionPhase.LegacyTagHelperResolver.cs (61)
20IntermediateNode target, 29IntermediateNode target, 76var child = elementNode.Children[i]; 341foreach (var child in htmlAttr.Children) 399foreach (var child in htmlAttr.Children) 425foreach (var child in htmlAttr.Children) 450private static void ConvertValueChildren(IntermediateNode targetNode, HtmlAttributeIntermediateNode htmlAttr, bool isBoundStringProperty, RazorSourceDocument sourceDocument) 472foreach (var child in htmlAttr.Children) 532private static void ConvertDynamicNonStringValueChildren(IntermediateNode targetNode, HtmlAttributeIntermediateNode htmlAttr, RazorSourceDocument sourceDocument) 536foreach (var child in htmlAttr.Children) 559private static void ConvertMixedLiteralAndExpressionValue(IntermediateNode targetNode, HtmlAttributeIntermediateNode htmlAttr, RazorSourceDocument sourceDocument) 564foreach (var child in htmlAttr.Children) 615private static void ConvertEscapedAtExpressionValue(IntermediateNode targetNode, HtmlAttributeIntermediateNode htmlAttr) 618foreach (var child in htmlAttr.Children) 622foreach (var token in hc2.Children) 646foreach (var token in htmlAttrValue.Children) 686var firstInnerChild = csharpExprValue.Children[0]; 694foreach (var innerChild in csharpExprValue.Children) 699var lastInnerChild = csharpExprValue.Children[^1]; 718private static void ConvertPureCSharpExpressionValue(IntermediateNode targetNode, HtmlAttributeIntermediateNode htmlAttr, RazorSourceDocument sourceDocument) 746foreach (var child in htmlAttr.Children) 750foreach (var innerChild in csharpAttrVal.Children) 778private static void UnwrapValueChildrenToTokens(IntermediateNode targetNode, HtmlAttributeIntermediateNode htmlAttr) 780foreach (var child in htmlAttr.Children) 815IntermediateNode targetNode, 818Func<CSharpIntermediateToken, IntermediateNode> createCSharpWrapper) 827foreach (var innerChild in children) 831var wrapper = createCSharpWrapper(csharpToken); 881foreach (var child in htmlAttr.Children) 916foreach (var token in children) 928private static void FlattenLiteralAttributeValue(IntermediateNode targetNode, HtmlAttributeIntermediateNode htmlAttr) 938public override void ConvertToPlainElement(IntermediateNode parent, int index, UnresolvedElementIntermediateNode elementNode) 945IntermediateNode? firstInserted = null; 946foreach (var child in elementNode.Children) 953foreach (var lowered in container.Children) 991private static int UnwrapHtmlAttribute(IntermediateNode parent, int insertIndex, HtmlAttributeIntermediateNode htmlAttr) 996foreach (var attrChild in htmlAttr.Children) 1022foreach (var attrChild in htmlAttr.Children) 1058private static int UnwrapDataDashAttribute(IntermediateNode parent, int insertIndex, HtmlAttributeIntermediateNode htmlAttr, bool hasDynamicChildren) 1083foreach (var attrChild in htmlAttr.Children) 1104foreach (var innerChild in exprAttrValue.Children) 1134private static void MergeAdjacentHtmlContent(IntermediateNode parent, int index, int insertIndex) 1183foreach (var child in htmlAttr.Children) 1195foreach (var token in htmlContent.Children) 1206foreach (var exprChild in csharpAttrValue.Children) 1214foreach (var innerToken in innerExpr.Children) 1249IntermediateNode target, 1280foreach (var child in htmlAttr.Children) 1307IntermediateNode target, 1366foreach (var child in htmlAttr.Children) 1400IntermediateNode target) 1411IntermediateNode target, 1427IntermediateNode target, 1434var child = htmlAttr.Children[i]; 1438foreach (var valueChild in unresolvedLiteral.Children) 1487IntermediateNode target, 1496foreach (var child in htmlAttr.Children) 1503foreach (var valueChild in unresolvedLiteral.Children) 1584IntermediateNode target, 1656IntermediateNode node, 1672foreach (var child in node.Children)
Language\DocumentClassifierPassBase.cs (3)
58var children = new List<IntermediateNode>(documentNode.Children); 136var child = children[i]; 146public override void VisitDefault(IntermediateNode node)
Language\Extensions\DefaultTagHelperTargetExtension.cs (1)
419IntermediateNode node,
Language\Extensions\PreallocatedTagHelperAttributeOptimizationPass.cs (2)
54foreach (var current in _classDeclaration.AssumeNotNull().Children) 103foreach (var current in _classDeclaration.AssumeNotNull().Children)
Language\Extensions\ViewCssScopePass.cs (1)
45var child = node.Children[i];
Language\Intermediate\ComponentTypeArgumentIntermediateNode.cs (2)
70private static void AppendTokens(IntermediateNode node, StringBuilder sb, ref SourceSpan? firstSpan, ref SourceSpan? lastSpan) 72foreach (var child in node.Children)
Language\Intermediate\DefaultRazorIntermediateNodeBuilder.cs (11)
13private readonly List<IntermediateNode> _stack; 18_stack = new List<IntermediateNode>(); 21public override IntermediateNode Current 29public override void Add(IntermediateNode node) 39public override void Insert(int index, IntermediateNode node) 57public override IntermediateNode Build() 59IntermediateNode node = null; 68public override IntermediateNode Pop() 75var node = _stack[--_depth]; 79public override void Push(IntermediateNode node) 97var parent = _stack[_depth - 1];
Language\Intermediate\DocumentIntermediateNodeExtensions.cs (9)
33private static T? FindNode<T>(IntermediateNode node, Func<T, bool> predicate) 34where T : IntermediateNode 36using var stack = new PooledArrayBuilder<IntermediateNode>(); 76using var stack = new PooledArrayBuilder<(IntermediateNode node, IntermediateNode parent)>(); 101where TNode : IntermediateNode 114where TNode : IntermediateNode 121using var stack = new PooledArrayBuilder<(IntermediateNode node, IntermediateNode parent, bool visited)>();
Language\Intermediate\IntermediateNode.cs (1)
37public void AddDiagnosticsFromNode(IntermediateNode node)
Language\Intermediate\IntermediateNodeBuilder.cs (7)
12public static IntermediateNodeBuilder Create(IntermediateNode root) 24public abstract IntermediateNode Current { get; } 26public abstract void Add(IntermediateNode node); 28public abstract void Insert(int index, IntermediateNode node); 30public abstract IntermediateNode Build(); 32public abstract void Push(IntermediateNode node); 34public abstract IntermediateNode Pop();
Language\Intermediate\IntermediateNodeCollection.cs (22)
13public sealed class IntermediateNodeCollection : IList<IntermediateNode>, IReadOnlyList<IntermediateNode> 15public static readonly IntermediateNodeCollection ReadOnly = new IntermediateNodeCollection(new List<IntermediateNode>().AsReadOnly()); 17private readonly IList<IntermediateNode> _inner; 20: this(new List<IntermediateNode>()) 24private IntermediateNodeCollection(IList<IntermediateNode> inner) 29public IntermediateNode this[int index] 55public void Add(IntermediateNode item) 65public void AddRange(IEnumerable<IntermediateNode> items) 72foreach (var item in items) 92internal void AddRange(in PooledArrayBuilder<IntermediateNode> items) 94foreach (var item in items) 105public bool Contains(IntermediateNode item) 110public void CopyTo(IntermediateNode[] array, int arrayIndex) 134IEnumerator<IntermediateNode> IEnumerable<IntermediateNode>.GetEnumerator() 144public int IndexOf(IntermediateNode item) 154public void Insert(int index, IntermediateNode item) 169public bool Remove(IntermediateNode item) 189public struct Enumerator : IEnumerator<IntermediateNode> 191private readonly IList<IntermediateNode> _items; 205public IntermediateNode Current
Language\Intermediate\IntermediateNodeExtensions.cs (11)
11public static ImmutableArray<RazorDiagnostic> GetAllDiagnostics(this IntermediateNode node) 27static void CollectDiagnostics(IntermediateNode node, ref PooledHashSet<RazorDiagnostic> diagnostics) 34foreach (var childNode in node.Children) 41public static ImmutableArray<TNode> FindDescendantNodes<TNode>(this IntermediateNode node) 42where TNode : IntermediateNode 50internal static void CollectDescendantNodes<TNode>(this IntermediateNode root, ref PooledArrayBuilder<TNode> results) 51where TNode : IntermediateNode 53using var stack = new PooledArrayBuilder<IntermediateNode>(); 60var node = stack.Pop(); 70static void PushChildren(IntermediateNode node, ref PooledArrayBuilder<IntermediateNode> stack)
Language\Intermediate\IntermediateNodeFormatter.cs (6)
42private static string GetNodeShortName(IntermediateNode node) 51const string ShortNameSuffix = nameof(IntermediateNode); 70foreach (var child in children) 99public void FormatNode(IntermediateNode node) 155public void FormatTree(IntermediateNode node) 212public override void VisitDefault(IntermediateNode node)
Language\Intermediate\IntermediateNodeReference.cs (13)
13public IntermediateNode Node { get; } 14public IntermediateNode Parent { get; } 16public IntermediateNodeReference(IntermediateNode node, IntermediateNode parent) 25public void Deconstruct(out IntermediateNode node, out IntermediateNode parent) 52public IntermediateNodeReference InsertAfter(IntermediateNode node) 62public void InsertAfter(IEnumerable<IntermediateNode> nodes) 68foreach (var node in nodes) 74public IntermediateNodeReference InsertBefore(IntermediateNode node) 84public void InsertBefore(IEnumerable<IntermediateNode> nodes) 90foreach (var node in nodes) 103public IntermediateNodeReference Replace(IntermediateNode node)
Language\Intermediate\IntermediateNodeReference`1.cs (9)
11where T : IntermediateNode 14public IntermediateNode Parent { get; } 16public IntermediateNodeReference(T node, IntermediateNode parent) 25public void Deconstruct(out T node, out IntermediateNode parent) 35where TNode : IntermediateNode 42public void InsertAfter(IEnumerable<IntermediateNode> nodes) 46where TNode : IntermediateNode 53public void InsertBefore(IEnumerable<IntermediateNode> nodes) 60where TNode : IntermediateNode
Language\Intermediate\IntermediateNodeVisitor.cs (2)
8public virtual void Visit(IntermediateNode node) 13public virtual void VisitDefault(IntermediateNode node)
Language\Intermediate\IntermediateNodeWalker.cs (3)
12protected ReadOnlySpan<IntermediateNode> Ancestors => _ancestorStack.Span; 14protected IntermediateNode? Parent 17public override void VisitDefault(IntermediateNode node)
Language\Intermediate\IntermediateNodeWalker.Stack.cs (6)
22private IntermediateNode[]? _stack; 29public readonly ReadOnlySpan<IntermediateNode> Span 31? ReadOnlySpan<IntermediateNode>.Empty 34public void Push(IntermediateNode node) 57_stack = new IntermediateNode[InitialStackSize]; 67var newStack = new IntermediateNode[length * 2];
Language\Intermediate\MarkupElementIntermediateNode.cs (1)
21public IEnumerable<IntermediateNode> Body => Children.Where(c =>
Language\Intermediate\UnresolvedAttributeIntermediateNode.cs (2)
49public IntermediateNode? AsTagHelperAttribute { get; set; } 59public IntermediateNode? AsMarkupAttribute { get; set; }
Mvc.Version2_X\InstrumentationPass.cs (5)
57public InstrumentationItem(IntermediateNode node, IntermediateNode parent, bool isLiteral, SourceSpan source) 65public IntermediateNode Node { get; } 67public IntermediateNode Parent { get; } 108var child = node.Children[i];
Mvc\InjectDirective.cs (2)
67var directive = visitor.Directives[i]; 114public IList<IntermediateNode> Directives { get; } = [];
Mvc\PageDirective.cs (3)
27private PageDirective(string routeTemplate, IntermediateNode directiveNode, SourceSpan? source) 36public IntermediateNode DirectiveNode { get; } 91public IntermediateNode DirectiveNode { get; private set; }
Mvc\ViewComponentTagHelperPass.cs (1)
131where T : IntermediateNode