Table of Contents

Class SelectCaseStatementNode

Namespace
RDCore.SDK.Model.AST.Statements
Assembly
RDCore.SDK.dll

An executable statement node that represents a Select Case...End Select block.

public record SelectCaseStatementNode : StatementNode, IEquatable<SyntaxNode>, IExecutableNode, IEquatable<StatementNode>, IEquatable<SelectCaseStatementNode>
Inheritance
SelectCaseStatementNode
Implements
Inherited Members

Constructors

SelectCaseStatementNode(SyntaxNodeId, SourceLocation, ExpressionNode, ImmutableArray<CaseExpressionStatementNode>, CaseElseClauseStatementNode?)

An executable statement node that represents a Select Case...End Select block.

public SelectCaseStatementNode(SyntaxNodeId Identity, SourceLocation SourceLocation, ExpressionNode ControlExpression, ImmutableArray<CaseExpressionStatementNode> CaseExpressionBlocks, CaseElseClauseStatementNode? CaseElseBlock)

Parameters

Identity SyntaxNodeId

A unique identifier for this specific syntax node.

SourceLocation SourceLocation

The document location (Uri+Range) of the bound expression.

ControlExpression ExpressionNode

The control expression whose evaluation result each Case range clause gets compared to.

CaseExpressionBlocks ImmutableArray<CaseExpressionStatementNode>

The Case blocks, in source order.

CaseElseBlock CaseElseClauseStatementNode

The Case Else block, or null when the statement declares none.

Properties

CaseElseBlock

The Case Else block, or null when the statement declares none.

public CaseElseClauseStatementNode? CaseElseBlock { get; init; }

Property Value

CaseElseClauseStatementNode

CaseExpressionBlocks

The Case blocks, in source order.

public ImmutableArray<CaseExpressionStatementNode> CaseExpressionBlocks { get; init; }

Property Value

ImmutableArray<CaseExpressionStatementNode>

ControlExpression

The control expression whose evaluation result each Case range clause gets compared to.

public ExpressionNode ControlExpression { get; init; }

Property Value

ExpressionNode