Table of Contents

Namespace RDCore.SDK.Model.AST.Statements

Classes

AssignmentStatementNode

An executable statement node that represents a Let-assignment (MS-VBAL §5.4.3.8) or a Set-assignment (MS-VBAL §5.4.3.9). Both statements share the exact same syntax ([Let] lExpression = expression vs. Set lExpression = expression) — only their static and runtime coercion semantics differ, so one shape suffices; Kind tells them apart.

CallStatementNode

An executable statement node that represents a procedure or function call (MS-VBAL §5.4.2.1 Call Statement) — either the explicit Call <lExpression> form or an implicit bare-call statement.

CaseComparisonRangeClauseNode

A Case range clause matching by comparison (e.g. Case Is > 5).

CaseElseClauseStatementNode

The Case Else branch of a Select Case block statement.

CaseExpressionStatementNode

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

CaseRangeClauseNode

A Case range clause — one of the comma-separated conditions on a Case line (MS-VBAL 5.4.2.10), each independently a single value, a comparison, or a To range.

CaseToRangeClauseNode

A Case range clause matching an inclusive range (e.g. Case 1 To 10).

CaseValueRangeClauseNode

A Case range clause matching a single value (e.g. Case 5).

DoLoopStatementNode

Represents a Do...Loop construct.

DoLoopUntilStatementNode

Represents a Do... Loop Until construct.

DoLoopWhileStatementNode

Represents a Do... Loop While construct.

DoUntilLoopStatementNode

Represents a Do Until...Loop construct.

DoWhileLoopStatementNode

Represents a Do While...Loop construct.

ElseBlockStatementNode

Represents the Else branch of an If conditional block.

ElseIfBlockStatementNode

Represents an ElseIf branch of an If conditional block.

ErrorStatementNode

Represents a (legacy) statement that raises a run-time error (MS-VBAL §5.4.4.3).

ForEachStatementNode

Represents a For Each...Next loop construct.

ForStatementNode

Represents a For...Next loop construct.

GoSubStatementNode

Represents a statement that pushes the next instruction offset to the local return stack, then moves the current instruction pointer to a specified label (MS-VBAL §5.4.2.14).

GoToStatementNode

Represents a statement that moves the current instruction pointer to a specified label (MS-VBAL §5.4.2.12).

IfBlockStatementNode

An executable statement node that represents an If...Then...ElseIf...Else...End If block.

InlineIfStatementNode

Represents a single-line If statement (MS-VBAL §5.4.2.9) — same condition shape as IfBlockStatementNode, but both branches sit on one source line and may hold several colon-separated statements instead of a full block.

KeywordStatementNode

An executable statement node that represents a fixed-keyword statement with a positional argument list — the file statements (MS-VBAL §5.4.5 File Statements) and similarly-shaped statements (Erase, Name, RaiseEvent) that are not a procedure/function call.

OnErrorGoToStatementNode

Represents a statement that defines a locally-scoped error handler label (MS-VBAL §5.4.4.1).

OnErrorResumeStatementNode

Represents a statement that disables error handling (On Error Resume Next, MS-VBAL §5.4.4.1).

OpenStatementNode

MS-VBAL 5.4.5.1 the Open statement. Mode, Access, and Lock are keyword choices, not expressions — the reason this statement needs its own shape rather than the generic KeywordStatementNode the other file statements share.

PrecompilerElseBlockStatementNode

Represents a conditional executable statement block that is part of an #If...#Else precompiler conditional branch.

PrecompilerElseIfBlockStatementNode

Represents a conditional executable statement block that is part of an #If...#ElseIf precompiler conditional branch.

PrecompilerIfBlockStatementNode

Represents a conditional executable statement block.

PrecompilerInlineIfStatementNode

Represents a conditional executable statement.

PrintStatementNode

MS-VBAL 5.4.5.8-9 a Print or Write statement, and the object-relative bare form (Print "x" invoking the enclosing form/report's own Print member — MS-VBAL's own grammar comment calls this an unqualifiedObjectPrintStmt).

ResumeNextStatementNode

Represents a statement that resumes error handling at the instruction following the instruction that tripped the last On Error jump (Resume Next, MS-VBAL §5.4.4.2).

ResumeStatementNode

Represents a statement that resumes error handling, optionally at a specified label (MS-VBAL §5.4.4.2).

ReturnStatementNode

Represents a statement that pops an offset from the local return stack, then moves the current instruction pointer to that instruction (MS-VBAL §5.4.2.15).

SelectCaseStatementNode

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

StatementBlock
WhileWendStatementNode

Represents a While...Wend loop construct.

WithStatementNode

Represents a With...End With block (MS-VBAL §5.4.2.21).

Enums

AssignmentKind

The three spellings an AssignmentStatementNode can have.

VBFileAccessMode

MS-VBAL 5.4.5.1 the Open statement's access clause.

VBFileLockMode

MS-VBAL 5.4.5.1 the Open statement's lock clause.

VBFileMode

MS-VBAL 5.4.5.1 the Open statement's fileMode clause.