Sign in Join
FPDoc Onlineexperiment

TCustomVariantType class

In unit Variants

Base class for a custom variant type.

Declaration

pascal
TCustomVariantType = class(TObject)

Inheritance

  1. TCustomVariantType
  2. TObject

Descends from it: TInvokeableVariantType

Description

TCustomVariantType is used as a base class to implement custom variants. To define a custom variant type, a descendent of TCustomVariant must be made, and the appropriate methods must be overridden and implemented according to the specifications of the new type. Typically this means defining how your new type maps to another variant or a basic type.

Note that the TCustomVariantType descendent does not hold the data of the variant: it just describes how a variant record (TVarRec) that contains the new type's data can be examined or manipulated.

See also

Properties

VarTypepublicRegistered type.

Methods

QueryInterfaceprotected
_AddRefprotected
_Releaseprotected
SimplisticClearprotected
SimplisticCopyprotected
RaiseInvalidOpprotected
RaiseCastErrorprotected
RaiseDispErrorprotected
LeftPromotionprotected
RightPromotionprotected
OlePromotionprotected
DispInvokeprotected
VarDataInitprotected
VarDataClearprotected
VarDataCopyprotected
VarDataCopyNoIndprotected
VarDataCastprotected
VarDataCastToprotected
VarDataCastToOleStrprotected
VarDataFromStrprotected
VarDataFromOleStrprotected
VarDataToStrprotected
VarDataIsEmptyParamprotected
VarDataIsByRefprotected
VarDataIsArrayprotected
VarDataIsOrdinalprotected
VarDataIsFloatprotected
VarDataIsNumericprotected
VarDataIsStrprotected
CreatepublicInstantiate a new custom variant type.
DestroypublicUnregister variant type.
IsClearpublicIs the custom value unassigned ?
CastpublicCast a custom variant to another type.
CastTopublicCast a custom variant to another type.
CastToOlepublicCast variant value to OLE value.
ClearpublicClear a value.
CopypublicCopy a custom variant value.
BinaryOppublicPerform a binary mathematical operation.
UnaryOppublicPerform a unary mathematical operation.
CompareOppublicCheck result of a comparison between 2 custom variant values.
ComparepublicComparison 2 custom variant values.

Inherited

From TObject (40)

AfterConstruction BeforeDestruction CheckDisposed ClassInfo ClassName ClassNameIs ClassParent ClassType CleanupInstance DefaultHandler DefaultHandlerStr Dispatch DispatchStr Disposed DisposeOf Equals FieldAddress Free FreeInstance GetDisposed GetHashCode GetInterface GetInterfaceByStr GetInterfaceEntry GetInterfaceEntryByStr GetInterfaceTable GetInterfaceWeak GetLastCastErrorInfo InheritsFrom InitInstance InstanceSize MethodAddress MethodName newinstance QualifiedClassName SafeCallException StringMessageTable SystemHasExtendedRTTI ToString UnitName

An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.