Table of Contents

Class ForeachDeclareKeyValueStatementNode

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

Constructors

ForeachDeclareKeyValueStatementNode(Token, IVariableDeclarationNode, Token, ExpressionNode, IReadOnlyCollection<StatementNode>)

public ForeachDeclareKeyValueStatementNode(Token ForeachKeywordToken, IVariableDeclarationNode KeyDeclaration, Token ValueIdentifier, ExpressionNode Collection, IReadOnlyCollection<StatementNode> Body)

Parameters

ForeachKeywordToken Token
KeyDeclaration IVariableDeclarationNode
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

KeyDeclaration

public IVariableDeclarationNode KeyDeclaration { get; init; }

Property Value

IVariableDeclarationNode

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 IVariableDeclarationNode, out Token, out ExpressionNode, out IReadOnlyCollection<StatementNode>)

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

Parameters

ForeachKeywordToken Token
KeyDeclaration IVariableDeclarationNode
ValueIdentifier Token
Collection ExpressionNode
Body IReadOnlyCollection<StatementNode>

Equals(ForeachDeclareKeyValueStatementNode?)

public bool Equals(ForeachDeclareKeyValueStatementNode? other)

Parameters

other ForeachDeclareKeyValueStatementNode

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 ==(ForeachDeclareKeyValueStatementNode?, ForeachDeclareKeyValueStatementNode?)

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

Parameters

left ForeachDeclareKeyValueStatementNode
right ForeachDeclareKeyValueStatementNode

Returns

bool

operator !=(ForeachDeclareKeyValueStatementNode?, ForeachDeclareKeyValueStatementNode?)

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

Parameters

left ForeachDeclareKeyValueStatementNode
right ForeachDeclareKeyValueStatementNode

Returns

bool