Table of Contents

Class ForeachKeyValueStatementNode

Namespace
StepLang.Parsing
Assembly
StepLang.dll
public sealed record ForeachKeyValueStatementNode : StatementNode, IVisitableNode<IStatementVisitor>, INode, IEquatable<StatementNode>, IEquatable<ForeachKeyValueStatementNode>
Inheritance
ForeachKeyValueStatementNode
Implements
Inherited Members

Constructors

ForeachKeyValueStatementNode(Token, Token, Token, ExpressionNode, IReadOnlyCollection<StatementNode>)

public ForeachKeyValueStatementNode(Token ForeachKeywordToken, Token KeyIdentifier, Token ValueIdentifier, ExpressionNode Collection, IReadOnlyCollection<StatementNode> Body)

Parameters

ForeachKeywordToken Token
KeyIdentifier Token
ValueIdentifier Token
Collection ExpressionNode
Body IReadOnlyCollection<StatementNode>

Properties

Body

public IReadOnlyCollection<StatementNode> Body { get; init; }

Property Value

IReadOnlyCollection<StatementNode>

Collection

public ExpressionNode Collection { get; init; }

Property Value

ExpressionNode

EqualityContract

protected override Type EqualityContract { get; }

Property Value

Type

ForeachKeywordToken

public Token ForeachKeywordToken { get; init; }

Property Value

Token

KeyIdentifier

public Token KeyIdentifier { get; init; }

Property Value

Token

Location

public override TokenLocation Location { get; }

Property Value

TokenLocation

ValueIdentifier

public Token ValueIdentifier { get; init; }

Property Value

Token

Methods

Accept(IStatementVisitor)

public override void Accept(IStatementVisitor visitor)

Parameters

visitor IStatementVisitor

Deconstruct(out Token, out Token, out Token, out ExpressionNode, out IReadOnlyCollection<StatementNode>)

public void Deconstruct(out Token ForeachKeywordToken, out Token KeyIdentifier, out Token ValueIdentifier, out ExpressionNode Collection, out IReadOnlyCollection<StatementNode> Body)

Parameters

ForeachKeywordToken Token
KeyIdentifier Token
ValueIdentifier Token
Collection ExpressionNode
Body IReadOnlyCollection<StatementNode>

Equals(ForeachKeyValueStatementNode?)

public bool Equals(ForeachKeyValueStatementNode? other)

Parameters

other ForeachKeyValueStatementNode

Returns

bool

Equals(StatementNode?)

public override sealed bool Equals(StatementNode? other)

Parameters

other StatementNode

Returns

bool

Equals(object?)

public override bool Equals(object? obj)

Parameters

obj object

Returns

bool

GetHashCode()

public override int GetHashCode()

Returns

int

PrintMembers(StringBuilder)

protected override bool PrintMembers(StringBuilder builder)

Parameters

builder StringBuilder

Returns

bool

ToString()

public override string ToString()

Returns

string

Operators

operator ==(ForeachKeyValueStatementNode?, ForeachKeyValueStatementNode?)

public static bool operator ==(ForeachKeyValueStatementNode? left, ForeachKeyValueStatementNode? right)

Parameters

left ForeachKeyValueStatementNode
right ForeachKeyValueStatementNode

Returns

bool

operator !=(ForeachKeyValueStatementNode?, ForeachKeyValueStatementNode?)

public static bool operator !=(ForeachKeyValueStatementNode? left, ForeachKeyValueStatementNode? right)

Parameters

left ForeachKeyValueStatementNode
right ForeachKeyValueStatementNode

Returns

bool