tvardata¶
Variant record.
Declaration¶
Source position: varianth.inc line 96
type
tvardata = packed record
vtype: tvartype = Word;
case Integer of
0: (
res1 : Word;
case Integer of
0: (
res2 : Word;
res3 : Word;
case Word of
varsmallint: (
vsmallint : SmallInt;
);
varinteger: (
vinteger : LongInt;
);
varsingle: (
vsingle : single;
);
vardouble: (
vdouble : Double;
);
vardate: (
vdate : TDateTime;
);
varcurrency: (
vcurrency : currency;
);
varolestr: (
volestr : PWideChar;
);
vardispatch: (
vdispatch : pointer;
);
varerror: (
verror : HRESULT;
);
varboolean: (
vboolean : wordbool;
);
varunknown: (
vunknown : pointer;
);
varustring: (
vustring : pointer;
);
varshortint: (
vshortint : ShortInt;
);
varbyte: (
vbyte : Byte;
);
varword: (
vword : Word;
);
varlongword: (
vlongword : DWord;
);
varuint32: (
vuint32 : DWord;
);
varint64: (
vint64 : Int64;
);
varqword: (
vqword : QWord;
);
varword64: (
vword64 : QWord;
);
varstring: (
vstring : pointer;
);
varany: (
vany : pointer;
);
vararray: (
varray : pvararray;
);
varbyref: (
vpointer : pointer;
);
varrecord: (
vrecord : pointer;
precinfo : pointer;
);
);
1: (
vlongs : Array[0..2] of LongInt;
);
);
1: (
vwords : Array[0..6] of Word;
);
2: (
vbytes : Array[0..13] of Byte;
);
end;
Description¶
TVarData is a record representation of a variant. It contains the internal structure of a variant and is handled by the various variant handling routines.