Table of Contents

Class VBTypedValue

Namespace
RDCore.SDK.Model.Values.Abstract
Assembly
RDCore.SDK.dll

Represents any typed value.

public abstract record VBTypedValue : VBRuntimeEntity, IEquatable<VBRuntimeEntity>, IEquatable<VBTypedValue>
Inheritance
VBTypedValue
Implements
Derived
Inherited Members

Remarks

This class is at the base of the type hierarchy for all typed values.

Constructors

VBTypedValue(VBType, Symbol)

Represents any typed value.

protected VBTypedValue(VBType TypeInfo, Symbol ResolvedSymbol)

Parameters

TypeInfo VBType

The VBType of the value.

ResolvedSymbol Symbol

The Symbol associated with the value, if one is resolved.

Remarks

This class is at the base of the type hierarchy for all typed values.

Properties

BoxedValue

Gets the boxed (object) underlying managed value.

public abstract object BoxedValue { get; }

Property Value

object

Remarks

👉 This member is provided as a non-generic convenience for contexts where the type is unknown. Use the generic ITypedValue<T> whenever possible instead.

CultureInfo

A static and thread-safe reference to the "en-US" CultureInfo instance that derived values should use to ensure correct string/numeric conversions - this will almost certainly need to be revised to meet MS-VBAL.

public static CultureInfo CultureInfo { get; }

Property Value

CultureInfo

IsWithBlockVariable

true if this typed value is a With block variable.

public bool IsWithBlockVariable { get; init; }

Property Value

bool

Remarks

A typed value serving as a With block variable should be a VBObjectValue or a VBVariantValue wrapping a VBObjectValue that refers to a non-null object pointer (VBNothingValue).

RawAddress

The raw memory address of this typed value.

public long RawAddress { get; init; }

Property Value

long

Size

The allocated size (in bytes) of this value.

public abstract int Size { get; }

Property Value

int

Methods

Describe()

Creates a new VBTypeDescValue that describes this value.

public VBTypeDescValue Describe()

Returns

VBTypeDescValue

GetTargetType()

Gets the described Target type of this value if the value is a VBTypeDescValue; yields the TypeInfo of this value otherwise.

public VBType GetTargetType()

Returns

VBType

Remarks

👉 The TypeInfo of a type descriptor value is a VBTypeDesc.