| [Overview][Constants][Types][Classes][Procedures and functions][Index] | 
Class properties type data record.
Source position: typinfo.pp line 517
type TTypeData = packed record  | 
||
public  | 
||
  | 
Base type on which this type is based.  | 
|
  | 
Comp type  | 
|
property ParentInfo: PTypeInfo; [r]  | 
  | 
Parent class type info  | 
property RecInitData: PRecInitData; [r]  | 
||
property HelperParent: PTypeInfo; [r]  | 
  | 
Type information for parent helper class  | 
property ExtendedInfo: PTypeInfo; [r]  | 
  | 
Type information for the extended type (record or class).  | 
property IntfParent: PTypeInfo; [r]  | 
  | 
Parent interface type data.  | 
property RawIntfParent: PTypeInfo; [r]  | 
  | 
Raw interface parent.  | 
property IIDStr: ShortString; [r]  | 
  | 
IID string representation of interface  | 
  | 
Dynamical array Element type  | 
|
  | 
Dynamical array Element type  | 
|
property InstanceType: PTypeInfo; [r]  | 
  | 
Pointer to instance type data  | 
  | 
Type info for referred type (Nil for untyped pointer)  | 
|
  | 
||
case TTypeKind of  | 
||
tkUnKnown, tkLString, tkWString, tkVariant, tkUString: (  | 
||
);  | 
||
tkAString: (  | 
||
CodePage: Word;  | 
  | 
Codepage for a single-byte string type  | 
);  | 
||
tkInt64, tkQWord, tkInteger, tkChar, tkEnumeration, tkBool, tkWChar, tkSet: (  | 
||
OrdType: TOrdType;  | 
  | 
Type is an ordinal type  | 
case TTypeKind of  | 
||
tkInteger, tkChar, tkEnumeration, tkBool, tkWChar: (  | 
||
MinValue: LongInt;  | 
  | 
Minimum value for the (subrange) type.  | 
MaxValue: LongInt;  | 
  | 
Maximum value for the (subrange) type.  | 
case TTypeKind of  | 
||
tkEnumeration: (  | 
||
BaseTypeRef: PPTypeInfo;  | 
||
NameList: ShortString;  | 
  | 
List of names for an enumerated type  | 
);  | 
||
);  | 
||
tkInt64: (  | 
||
MinInt64Value: Int64;  | 
  | 
Minimum Int64 value for subrange type.  | 
MaxInt64Value: Int64;  | 
  | 
Maximum int64 value for subrange type.  | 
);  | 
||
tkQWord: (  | 
||
MinQWordValue: QWord;  | 
  | 
Minimum QWord value for a subrange type.  | 
MaxQWordValue: QWord;  | 
  | 
Maximum QWord value for a subrange type.  | 
);  | 
||
tkSet: (  | 
||
SetSize: SizeInt;  | 
||
CompTypeRef: PPTypeInfo;  | 
||
);  | 
||
);  | 
||
tkFloat: (  | 
||
FloatType: TFloatType;  | 
  | 
Float type  | 
);  | 
||
tkSString: (  | 
||
MaxLength: Byte;  | 
  | 
Maximum length (for a shortstring type)  | 
);  | 
||
tkClass: (  | 
||
ClassType: TClass;  | 
  | 
Class type  | 
ParentInfoRef: PPTypeInfo;  | 
||
PropCount: SmallInt;  | 
  | 
Property count for class type  | 
UnitName: ShortString;  | 
  | 
Unit name in which type is defined.  | 
);  | 
||
tkRecord: (  | 
||
RecInitInfo: Pointer;  | 
||
RecSize: Integer;  | 
  | 
Record size for records  | 
case Boolean of  | 
||
False: (  | 
||
ManagedFldCount: Integer;  | 
  | 
Number of managed fields (followed by managed field info)  | 
);  | 
||
True: (  | 
||
TotalFieldCount: Integer;  | 
||
);  | 
||
);  | 
||
tkHelper: (  | 
||
HelperParentRef: PPTypeInfo;  | 
||
ExtendedInfoRef: PPTypeInfo;  | 
||
HelperProps: SmallInt;  | 
  | 
Number of properties provided by the helper.  | 
HelperUnit: ShortString;  | 
  | 
Unit the helper class is defined in.  | 
);  | 
||
tkMethod: (  | 
||
MethodKind: TMethodKind;  | 
  | 
Kind of method  | 
ParamCount: Byte;  | 
  | 
Method parameter count  | 
ParamList: array [0..1023] of Char;  | 
  | 
Type data for parameters  | 
);  | 
||
tkProcVar: (  | 
||
ProcSig: TProcedureSignature;  | 
  | 
Procedure signature for procedure type  | 
);  | 
||
tkInterface: (  | 
||
IntfParentRef: PPTypeInfo;  | 
||
IntfFlags: TIntfFlagsBase;  | 
  | 
Interface flags  | 
GUID: TGuid;  | 
  | 
GUID identification for interface  | 
IntfUnit: ShortString;  | 
  | 
Interface unit.  | 
);  | 
||
tkInterfaceRaw: (  | 
||
RawIntfParentRef: PPTypeInfo;  | 
||
RawIntfFlags: TIntfFlagsBase;  | 
  | 
Raw interface parent flags.  | 
IID: TGuid;  | 
  | 
GUID identifying raw interface.  | 
RawIntfUnit: ShortString;  | 
  | 
Raw interface unit.  | 
);  | 
||
tkArray: (  | 
||
ArrayData: TArrayTypeData;  | 
  | 
Array element data  | 
);  | 
||
tkDynArray: (  | 
||
elSize: PtrUInt;  | 
  | 
Dynamical array element size  | 
elType2Ref: PPTypeInfo;  | 
||
varType: LongInt;  | 
  | 
Dynamical array element type  | 
elTypeRef: PPTypeInfo;  | 
||
DynUnitName: ShortStringBase;  | 
  | 
Unit name  | 
);  | 
||
tkClassRef: (  | 
||
InstanceTypeRef: PPTypeInfo;  | 
||
);  | 
||
tkPointer: (  | 
||
RefTypeRef: PPTypeInfo;  | 
||
);  | 
||
end;  | 
If the typeinfo kind is tkClass, then the property information follows the UnitName string, as an array of TPropInfo records.