Table of Contents

Class IfElseIfStatementNode

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

Constructors

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

public IfElseIfStatementNode(Token IfKeywordToken, ExpressionNode Condition, IReadOnlyCollection<StatementNode> Body, ExpressionNode ElseCondition, IReadOnlyCollection<StatementNode> ElseBody)

Parameters

IfKeywordToken Token
Condition ExpressionNode
Body IReadOnlyCollection<StatementNode>
ElseCondition ExpressionNode
ElseBody IReadOnlyCollection<StatementNode>

Properties

Body

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

Property Value

IReadOnlyCollection<StatementNode>

Condition

public ExpressionNode Condition { get; init; }

Property Value

ExpressionNode

ElseBody

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

Property Value

IReadOnlyCollection<StatementNode>

ElseCondition

public ExpressionNode ElseCondition { get; init; }

Property Value

ExpressionNode

EqualityContract

protected override Type EqualityContract { get; }

Property Value

Type

IfKeywordToken

public Token IfKeywordToken { get; init; }

Property Value

Token

Location

public override TokenLocation Location { get; }

Property Value

TokenLocation

Methods

Accept(IStatementVisitor)

public override void Accept(IStatementVisitor visitor)

Parameters

visitor IStatementVisitor

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

public void Deconstruct(out Token IfKeywordToken, out ExpressionNode Condition, out IReadOnlyCollection<StatementNode> Body, out ExpressionNode ElseCondition, out IReadOnlyCollection<StatementNode> ElseBody)

Parameters

IfKeywordToken Token
Condition ExpressionNode
Body IReadOnlyCollection<StatementNode>
ElseCondition ExpressionNode
ElseBody IReadOnlyCollection<StatementNode>

Equals(IfElseIfStatementNode?)

public bool Equals(IfElseIfStatementNode? other)

Parameters

other IfElseIfStatementNode

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

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

Parameters

left IfElseIfStatementNode
right IfElseIfStatementNode

Returns

bool

operator !=(IfElseIfStatementNode?, IfElseIfStatementNode?)

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

Parameters

left IfElseIfStatementNode
right IfElseIfStatementNode

Returns

bool