| [Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] | 
Variant record.
Source position: varianth.inc line 95
type tvardata = packed record  | 
||
vtype: tvartype;  | 
  | 
Type of variant.  | 
case Integer of  | 
||
0: (  | 
||
res1: Word;  | 
  | 
Reserved byte  | 
case Integer of  | 
||
0: (  | 
||
res2: Word;  | 
  | 
Reserved byte  | 
res3: Word;  | 
  | 
Reserved byte  | 
case Word of  | 
||
varsmallint: (  | 
||
vsmallint: SmallInt;  | 
  | 
Smallint value  | 
);  | 
||
varinteger: (  | 
||
vinteger: LongInt;  | 
  | 
Integer value  | 
);  | 
||
varsingle: (  | 
||
vsingle: single;  | 
  | 
Single value  | 
);  | 
||
vardouble: (  | 
||
vdouble: Double;  | 
  | 
Double value  | 
);  | 
||
vardate: (  | 
||
vdate: TDateTime;  | 
  | 
TDateTime value  | 
);  | 
||
varcurrency: (  | 
||
vcurrency: currency;  | 
  | 
Currency value  | 
);  | 
||
varolestr: (  | 
||
volestr: PWideChar;  | 
  | 
OLE string value (specially allocated widestring)  | 
);  | 
||
vardispatch: (  | 
||
vdispatch: pointer;  | 
  | 
Dispatch interface value  | 
);  | 
||
varerror: (  | 
||
verror: HRESULT;  | 
  | 
Error value  | 
);  | 
||
varboolean: (  | 
||
vboolean: wordbool;  | 
  | 
Boolean value  | 
);  | 
||
varunknown: (  | 
||
vunknown: pointer;  | 
  | 
IUnknown interface value  | 
);  | 
||
varustring: (  | 
||
vustring: pointer;  | 
||
);  | 
||
varshortint: (  | 
||
vshortint: ShortInt;  | 
  | 
Shortint value  | 
);  | 
||
varbyte: (  | 
||
vbyte: Byte;  | 
  | 
Byte value  | 
);  | 
||
varword: (  | 
||
vword: Word;  | 
  | 
Word value  | 
);  | 
||
varlongword: (  | 
||
vlongword: DWord;  | 
  | 
Longword value  | 
);  | 
||
varint64: (  | 
||
vint64: Int64;  | 
  | 
Int64 value  | 
);  | 
||
varqword: (  | 
||
vqword: QWord;  | 
  | 
QWord value  | 
);  | 
||
varword64: (  | 
||
vword64: QWord;  | 
  | 
QWord value (?)  | 
);  | 
||
varstring: (  | 
||
vstring: pointer;  | 
  | 
Ansistring value  | 
);  | 
||
varany: (  | 
||
vany: pointer;  | 
  | 
Any value  | 
);  | 
||
vararray: (  | 
||
varray: pvararray;  | 
  | 
Variant array value  | 
);  | 
||
varbyref: (  | 
||
vpointer: pointer;  | 
  | 
Pointer value  | 
);  | 
||
varrecord: (  | 
||
vrecord: pointer;  | 
  | 
Pointer to record  | 
precinfo: pointer;  | 
  | 
Pointer to record type info data  | 
);  | 
||
);  | 
||
1: (  | 
||
vlongs: array [0..2] of LongInt;  | 
  | 
Value as an array of longints  | 
);  | 
||
);  | 
||
1: (  | 
||
vwords: array [0..6] of Word;  | 
  | 
Value as an array of words  | 
);  | 
||
2: (  | 
||
vbytes: array [0..13] of Byte;  | 
  | 
Value as an array of bytes  | 
);  | 
||
end;  | 
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.