SyntaxTokenList Struct

A sequence of tokens held in one slot of their parent.

Remarks

default is the empty list.

Implements

Nested types

NameDescription
SyntaxTokenList.EnumeratorWalks a SyntaxTokenList without allocating.

Constructors

NameDescription
SyntaxTokenList(IEnumerable<SyntaxToken>)Creates a detached list holding tokens.

SyntaxTokenList(IEnumerable<SyntaxToken>)

SyntaxTokenList.cs

Creates a detached list holding tokens.

public SyntaxTokenList(IEnumerable<SyntaxToken> tokens)

Parameters

tokens IEnumerable<SyntaxToken>

Exceptions

ArgumentNullException
tokens is null.

Properties

NameDescription
Count
FullSpan
Span
public int Count { get; }

Property value

int

No documentation is available.

public TextSpan FullSpan { get; }

Property value

TextSpan

No documentation is available.

public TextSpan Span { get; }

Property value

TextSpan

No documentation is available.

Indexers

NameDescription
this[int]
public SyntaxToken this[int index] { get; }

Parameters

index int

Property value

SyntaxToken

No documentation is available.

Methods

NameDescription
Add(SyntaxToken)Returns a detached list with token appended.
AddRange(IEnumerable<SyntaxToken>)Returns a detached list with tokens appended.
Any()
Create(ReadOnlySpan<SyntaxToken>)Creates a detached list holding tokens.
Equals(SyntaxTokenList)
Equals(object?)
First()
FirstOrDefault()
GetEnumerator()
GetHashCode()
IndexOf(SyntaxToken)Returns the position of token in this list, or -1.
Insert(int, SyntaxToken)Returns a detached list with token inserted at index.
InsertRange(int, IEnumerable<SyntaxToken>)Returns a detached list with tokens inserted at index.
Last()
LastOrDefault()
Remove(SyntaxToken)Returns a detached list without token, or this list when it does not contain it.
RemoveAt(int)Returns a detached list without the token at index.
Replace(SyntaxToken, SyntaxToken)Returns a detached list with newToken in place of tokenInList.
System.Collections.Generic.IEnumerable<Meziantou.Framework.Language.SyntaxToken>.GetEnumerator()
System.Collections.IEnumerable.GetEnumerator()
ToFullString()
ToString()

Add(SyntaxToken)

SyntaxTokenList.cs

Returns a detached list with token appended.

public SyntaxTokenList Add(SyntaxToken token)

Parameters

token SyntaxToken

Returns

SyntaxTokenList

AddRange(IEnumerable<SyntaxToken>)

SyntaxTokenList.cs

Returns a detached list with tokens appended.

public SyntaxTokenList AddRange(IEnumerable<SyntaxToken> tokens)
public bool Any()

Returns

bool

No documentation is available.

Create(ReadOnlySpan<SyntaxToken>)

SyntaxTokenList.cs

Creates a detached list holding tokens.

public static SyntaxTokenList Create(ReadOnlySpan<SyntaxToken> tokens)

Parameters

tokens ReadOnlySpan<SyntaxToken>

Returns

SyntaxTokenList

Remarks

This is what a collection expression targeting SyntaxTokenList builds its list with.

Equals overloads

Equals(SyntaxTokenList)

SyntaxTokenList.cs
public bool Equals(SyntaxTokenList other)
Parameters
other SyntaxTokenList
Returns

bool

No documentation is available.

Equals(object?)

SyntaxTokenList.cs
public override bool Equals(object? obj)
Parameters
obj object?
Returns

bool

No documentation is available.

public SyntaxToken First()

No documentation is available.

FirstOrDefault()

SyntaxTokenList.cs
public SyntaxToken FirstOrDefault()

No documentation is available.

GetEnumerator()

SyntaxTokenList.cs
public SyntaxTokenList.Enumerator GetEnumerator()

No documentation is available.

GetHashCode()

SyntaxTokenList.cs
public override int GetHashCode()

Returns

int

No documentation is available.

IndexOf(SyntaxToken)

SyntaxTokenList.cs

Returns the position of token in this list, or -1.

public int IndexOf(SyntaxToken token)

Parameters

token SyntaxToken

Returns

int

Remarks

Tokens are matched by which one they are, not by the immutable token behind them: that token is shared, so two entries spelled the same are usually the same token and would both answer with the first position.

Insert(int, SyntaxToken)

SyntaxTokenList.cs

Returns a detached list with token inserted at index.

public SyntaxTokenList Insert(int index, SyntaxToken token)

Parameters

index int
token SyntaxToken

Returns

SyntaxTokenList

InsertRange(int, IEnumerable<SyntaxToken>)

SyntaxTokenList.cs

Returns a detached list with tokens inserted at index.

public SyntaxTokenList InsertRange(int index, IEnumerable<SyntaxToken> tokens)

Parameters

index int
tokens IEnumerable<SyntaxToken>

Returns

SyntaxTokenList

Exceptions

ArgumentNullException
tokens is null.
public SyntaxToken Last()

No documentation is available.

LastOrDefault()

SyntaxTokenList.cs
public SyntaxToken LastOrDefault()

No documentation is available.

Remove(SyntaxToken)

SyntaxTokenList.cs

Returns a detached list without token, or this list when it does not contain it.

public SyntaxTokenList Remove(SyntaxToken token)

Parameters

token SyntaxToken

Returns

SyntaxTokenList

RemoveAt(int)

SyntaxTokenList.cs

Returns a detached list without the token at index.

public SyntaxTokenList RemoveAt(int index)

Parameters

index int

Returns

SyntaxTokenList

Replace(SyntaxToken, SyntaxToken)

SyntaxTokenList.cs

Returns a detached list with newToken in place of tokenInList.

public SyntaxTokenList Replace(SyntaxToken tokenInList, SyntaxToken newToken)

Parameters

tokenInList SyntaxToken
newToken SyntaxToken

Returns

SyntaxTokenList

Exceptions

ArgumentException
tokenInList is not in this list.

System.Collections.Generic.IEnumerable<Meziantou.Framework.Language.SyntaxToken>.GetEnumerator()

SyntaxTokenList.cs

No documentation is available.

System.Collections.IEnumerable.GetEnumerator()

SyntaxTokenList.cs
IEnumerator IEnumerable.GetEnumerator()

No documentation is available.

ToFullString()

SyntaxTokenList.cs
public string ToFullString()

Returns

string

No documentation is available.

public override string ToString()

Returns

string

No documentation is available.

Operators

NameDescription
operator ==(SyntaxTokenList, SyntaxTokenList)
operator !=(SyntaxTokenList, SyntaxTokenList)

operator ==(SyntaxTokenList, SyntaxTokenList)

SyntaxTokenList.cs
public static bool operator ==(SyntaxTokenList left, SyntaxTokenList right)

Parameters

left SyntaxTokenList
right SyntaxTokenList

Returns

bool

No documentation is available.

operator !=(SyntaxTokenList, SyntaxTokenList)

SyntaxTokenList.cs
public static bool operator !=(SyntaxTokenList left, SyntaxTokenList right)

Parameters

left SyntaxTokenList
right SyntaxTokenList

Returns

bool

No documentation is available.