Table of Contents

Class VBVariantValue

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

Represents a Variant value.

public record VBVariantValue : VBTypedValue, IEquatable<VBTypedValue>, IVBTypedValue<VBVariantValue, VBRuntimeVariantValue>, IEquatable<IVBTypedValue<VBVariantValue, VBRuntimeVariantValue>>, IEquatable<VBVariantValue>
Inheritance
VBVariantValue
Implements
Inherited Members

Remarks

👉 The managed type of this value is a VBRuntimeVariantValue, which boxes TypedValue itself so a fresh Variant round-trips through ISessionStorage intact: reading one back (CreateValue(IBindingHandle)) unboxes the very same wrapped value, never a fresh, unrelated Empty.

Constructors

VBVariantValue(VBTypedValue)

Creates a Variant wrapping typedValue, self-consistently bound: its own Handle boxes typedValue directly, so reading this value straight back through RuntimeValue never throws.

public VBVariantValue(VBTypedValue typedValue)

Parameters

typedValue VBTypedValue

VBVariantValue(IBindingHandle, VBTypedValue)

Creates a Variant wrapping typedValue and bound to handle directly — used when unboxing one already read back from storage.

public VBVariantValue(IBindingHandle handle, VBTypedValue typedValue)

Parameters

handle IBindingHandle
typedValue VBTypedValue

Properties

Size

The allocated size (in bytes) of this value.

public override int Size { get; }

Property Value

int

TypedValue

The wrapped typed value (may be another Variant).

public VBTypedValue TypedValue { get; init; }

Property Value

VBTypedValue

Value

Gets the underlying managed value corresponding to this typed value.

public VBRuntimeVariantValue Value { get; }

Property Value

VBRuntimeVariantValue

Methods

Equals(IVBTypedValue<VBVariantValue, VBRuntimeVariantValue>?)

Indicates whether the current object is equal to another object of the same type.

public bool Equals(IVBTypedValue<VBVariantValue, VBRuntimeVariantValue>? other)

Parameters

other IVBTypedValue<VBVariantValue, VBRuntimeVariantValue>

An object to compare with this object.

Returns

bool

true if the current object is equal to the other parameter; otherwise, false.

WithValue(VBTypedValue)

public VBVariantValue WithValue(VBTypedValue value)

Parameters

value VBTypedValue

Returns

VBVariantValue