Table of Contents

Class ConstantDescriptor

Namespace
RDCore.SDK.Platform.Protocol
Assembly
RDCore.SDK.dll

A transport-friendly projection of a Const declaration — a module-level VBConstantMemberSymbol or a procedure-local VBLocalConstantSymbol.

public record ConstantDescriptor : IEquatable<ConstantDescriptor>
Inheritance
ConstantDescriptor
Implements
Inherited Members

Properties

DeclaredTypeName

The declared type's name, or null — resolved host-side like a member's.

public string? DeclaredTypeName { get; init; }

Property Value

string

Name

The constant's identifier name.

public string Name { get; init; }

Property Value

string

Range

The source span of the declaration.

public SourceRange Range { get; init; }

Property Value

SourceRange

SelectionRange

The source span to select when navigating to the constant.

public SourceRange SelectionRange { get; init; }

Property Value

SourceRange

Value

The declaration's own constant expression, or null when it carried none.

public ExpressionNode? Value { get; init; }

Property Value

ExpressionNode

Remarks

The expression, not a value: a constant expression is not always a literal (Const K = 3 * 5, or one constant written in terms of another), and the host is where the evaluator that can reduce it lives.