4 instantiations of SyntaxNodeOrToken
Microsoft.CodeAnalysis.Razor.Compiler (4)
Language\Syntax\ChildSyntaxList.cs (2)
198return new SyntaxNodeOrToken(node, greenChild, position, index); 283return new SyntaxNodeOrToken(node, green, position, index);
Language\Syntax\SyntaxNodeOrToken.cs (2)
336return new SyntaxNodeOrToken(token.Parent, token.Node, token.Position, token.Index); 363? new SyntaxNodeOrToken(node)
94 references to SyntaxNodeOrToken
Microsoft.CodeAnalysis.Razor.Compiler (94)
Language\DefaultRazorIntermediateNodeLoweringPhase.cs (2)
625public SyntaxNodeOrToken this[int index] => list[start + index]; 632public SyntaxNodeOrToken FirstOrDefault() => Count > 0 ? this[0] : default;
Language\Legacy\LegacySyntaxNodeExtensions.ChildSyntaxListReversedEnumeratorStack.cs (4)
35private void PushRightmostChildren(SyntaxNodeOrToken nodeOrToken) 37var current = nodeOrToken; 57private bool TryMoveNextAndGetCurrent(out SyntaxNodeOrToken nodeOrToken) 77public bool TryGetNextNodeOrToken(out SyntaxNodeOrToken node)
Language\Legacy\LegacySyntaxNodeExtensions.cs (10)
16public SyntaxNodeOrToken? Previous; 18public SyntaxNodeOrToken? Next; 117foreach (var child in list) 136public static bool IsMetaCodeSpanKind(this SyntaxNodeOrToken nodeOrToken) 179public static bool IsSpanKind(this SyntaxNodeOrToken nodeOrToken) 182private static IEnumerable<SyntaxNodeOrToken> FlattenSpansInReverse(this SyntaxNode node) 186while (stack.TryGetNextNodeOrToken(out var nextNode)) 256public static SyntaxNodeOrToken? PreviousSpan(this SyntaxNode node) 272foreach (var span in parent.FlattenSpansInReverse()) 293public static SyntaxNodeOrToken? NextSpan(this SyntaxNode node)
Language\Legacy\WhiteSpaceRewriter.cs (1)
29var child = children[i];
Language\Syntax\ChildSyntaxList.cs (12)
12internal readonly partial struct ChildSyntaxList : IEquatable<ChildSyntaxList>, IReadOnlyList<SyntaxNodeOrToken> 58public SyntaxNodeOrToken this[int index] 108internal static SyntaxNodeOrToken ItemInternal(SyntaxNode node, int index) 119internal static SyntaxNodeOrToken ItemInternal(SyntaxNode node, int index, ref SlotData slotData) 212internal static SyntaxNodeOrToken ChildThatContainsPosition(SyntaxNode node, int targetPosition) 344private SyntaxNodeOrToken[] NodesAndTokens => [.. this]; 357public SyntaxNodeOrToken First() 374public SyntaxNodeOrToken Last() 405IEnumerator<SyntaxNodeOrToken> IEnumerable<SyntaxNodeOrToken>.GetEnumerator() 407? SpecializedCollections.EmptyEnumerator<SyntaxNodeOrToken>() 412? SpecializedCollections.EmptyEnumerator<SyntaxNodeOrToken>()
Language\Syntax\ChildSyntaxList.Enumerator.cs (4)
64public SyntaxNodeOrToken Current 75internal bool TryMoveNextAndGetCurrent(out SyntaxNodeOrToken current) 102private sealed class EnumeratorImpl : IEnumerator<SyntaxNodeOrToken> 117public SyntaxNodeOrToken Current
Language\Syntax\ChildSyntaxList.Reversed.cs (6)
14public readonly partial struct Reversed : IEnumerable<SyntaxNodeOrToken>, IEquatable<Reversed> 28IEnumerator<SyntaxNodeOrToken> IEnumerable<SyntaxNodeOrToken>.GetEnumerator() 30? SpecializedCollections.EmptyEnumerator<SyntaxNodeOrToken>() 35? SpecializedCollections.EmptyEnumerator<SyntaxNodeOrToken>() 79public readonly SyntaxNodeOrToken Current
Language\Syntax\SyntaxNavigator.cs (6)
52var child = en.Current; 97var child = en.Current; 138foreach (var child in current.Parent.ChildNodesAndTokens()) 180foreach (var child in node.Parent.ChildNodesAndTokens()) 222foreach (var child in current.Parent.ChildNodesAndTokens().Reverse()) 264foreach (var child in node.Parent.ChildNodesAndTokens().Reverse())
Language\Syntax\SyntaxNode.cs (9)
181internal SyntaxNodeOrToken ChildThatContainsPosition(int position) 190var childNodeOrToken = ChildSyntaxList.ChildThatContainsPosition(this, position); 226foreach (var nodeOrToken in ChildNodesAndTokens()) 240foreach (var nodeOrToken in ChildNodesAndTokens()) 336public IEnumerable<SyntaxNodeOrToken> DescendantNodesAndTokens(Func<SyntaxNode, bool>? descendIntoChildren = null) 346public IEnumerable<SyntaxNodeOrToken> DescendantNodesAndTokens(TextSpan span, Func<SyntaxNode, bool>? descendIntoChildren = null) 355public IEnumerable<SyntaxNodeOrToken> DescendandNodesAndTokensAndSelf(Func<SyntaxNode, bool>? descendIntoChildren = null) 364public IEnumerable<SyntaxNodeOrToken> DescendandNodesAndTokensAndSelf(TextSpan span, Func<SyntaxNode, bool>? descendIntoChildren = null) 465SyntaxNodeOrToken curNode = this;
Language\Syntax\SyntaxNode.Iterators.cs (4)
39private IEnumerable<SyntaxNodeOrToken> DescendantNodesAndTokensImpl(TextSpan span, Func<SyntaxNode, bool>? descendIntoChildren, bool includeSelf) 50if (stack.TryGetNextInSpan(in span, out var value)) 119public bool TryGetNextInSpan(in TextSpan span, out SyntaxNodeOrToken value) 413if (_stack.TryGetNextInSpan(in _span, out var value))
Language\Syntax\SyntaxNodeExtensions.cs (1)
43public static SourceLocation GetSourceLocation(this SyntaxNodeOrToken nodeOrToken, RazorSourceDocument source)
Language\Syntax\SyntaxNodeOrToken.cs (34)
14internal readonly struct SyntaxNodeOrToken : IEquatable<SyntaxNodeOrToken> 91/// Determines whether this <see cref="SyntaxNodeOrToken"/> is wrapping a token. 96/// Determines whether this <see cref="SyntaxNodeOrToken"/> is wrapping a node. 101/// Returns the underlying token if this <see cref="SyntaxNodeOrToken"/> is wrapping a 105/// The underlying token if this <see cref="SyntaxNodeOrToken"/> is wrapping a token. 125/// Returns the underlying node if this <see cref="SyntaxNodeOrToken"/> is wrapping a 129/// The underlying node if this <see cref="SyntaxNodeOrToken"/> is wrapping a node. 274/// Determines whether the supplied <see cref="SyntaxNodeOrToken"/> is equal to this 275/// <see cref="SyntaxNodeOrToken"/>. 277public bool Equals(SyntaxNodeOrToken other) 290/// Determines whether two <see cref="SyntaxNodeOrToken"/>s are equal. 292public static bool operator ==(SyntaxNodeOrToken left, SyntaxNodeOrToken right) 298/// Determines whether two <see cref="SyntaxNodeOrToken"/>s are unequal. 300public static bool operator !=(SyntaxNodeOrToken left, SyntaxNodeOrToken right) 306/// Determines whether the supplied <see cref="SyntaxNodeOrToken"/> is equal to this 307/// <see cref="SyntaxNodeOrToken"/>. 311return obj is SyntaxNodeOrToken token && Equals(token); 315/// Serves as hash function for <see cref="SyntaxNodeOrToken"/>. 328/// Returns a new <see cref="SyntaxNodeOrToken"/> that wraps the supplied token. 332/// A <see cref="SyntaxNodeOrToken"/> that wraps the supplied token. 334public static implicit operator SyntaxNodeOrToken(SyntaxToken token) 340/// Returns the underlying token wrapped by the supplied <see cref="SyntaxNodeOrToken"/>. 343/// The input <see cref="SyntaxNodeOrToken"/>. 346/// The underlying token wrapped by the supplied <see cref="SyntaxNodeOrToken"/>. 348public static explicit operator SyntaxToken(SyntaxNodeOrToken nodeOrToken) 354/// Returns a new <see cref="SyntaxNodeOrToken"/> that wraps the supplied node. 358/// A <see cref="SyntaxNodeOrToken"/> that wraps the supplied node. 360public static implicit operator SyntaxNodeOrToken(SyntaxNode? node) 368/// Returns the underlying node wrapped by the supplied <see cref="SyntaxNodeOrToken"/>. 371/// The input <see cref="SyntaxNodeOrToken"/>. 374/// The underlying node wrapped by the supplied <see cref="SyntaxNodeOrToken"/>. 376public static explicit operator SyntaxNode?(SyntaxNodeOrToken nodeOrToken)
Language\Syntax\SyntaxWalker.cs (1)
39foreach (var child in node.ChildNodesAndTokens())