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