Table of Contents

Class VBVarTypeExtensions

Namespace
RDCore.SDK.Model.Types
Assembly
RDCore.SDK.dll

Computes a VBVarType tag from a declared VBType — the mapping a Variant value uses to stay correctly shaped for COM interop (MS-VBAL 6.1.1.16).

public static class VBVarTypeExtensions
Inheritance
VBVarTypeExtensions
Inherited Members

Methods

VarType(VBClassModuleSymbol)

Gets the VBVarType tag for a live instance of this class: VBObject (VT_DISPATCH) when AutomationKind is Dispatch — every RD-VBA class module today — VBDataObject (VT_UNKNOWN) otherwise.

public static VBVarType VarType(this VBClassModuleSymbol classModule)

Parameters

classModule VBClassModuleSymbol

Returns

VBVarType

VarType(VBType)

Gets the VBVarType tag for a value of this declared type — the same tag VarType() would report for it. An array's own tag is VBArray combined with its element type's own tag, recursively (MS-VBAL 6.1.1.16's own "8192 + VarType of element's type"). A VBClassType defers to its own class module's AutomationKind (VarType(VBClassModuleSymbol)); a generic VBObjectType — a live object reference whose concrete class isn't known here, only ever resolvable by looking up the actual instance — defaults to VBObject (Automation-capable), the only sound default absent that lookup.

public static VBVarType VarType(this VBType type)

Parameters

type VBType

Returns

VBVarType