[Overview][Constants][Types][Classes][Procedures and functions][Index] | Reference for unit 'typinfo' (#rtl)

# TTypeData

Class properties type data record.

## Declaration

Source position: typinfo.pp line 124

`type TTypeData = packed record`
`case TTypeKind of`
`tkUnKnown, tkLString, tkWString, tkAString, tkVariant, tkUString: (`
`);`
`tkInteger, tkChar, tkEnumeration, 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;` |  | Maxmimum value for the (subrange) type.
`case TTypeKind of`
`tkEnumeration: (`
`BaseType: PTypeInfo;` |  | Base type on which this type is based.
`NameList: ShortString;` |  | List of names for an enumerated type
`);`
`);`
`tkSet: (`
`CompType: PTypeInfo;` |  | Comp type
`);`
`);`
`tkFloat: (`
`FloatType: TFloatType;` |  | Float type
`);`
`tkSString: (`
`MaxLength: Byte;` |  | Maximum length (for a shortstring type)
`);`
`tkClass: (`
`ClassType: TClass;` |  | Class type
`ParentInfo: PTypeInfo;` |  | Parent class type info
`PropCount: SmallInt;` |  | Property count for class type
`UnitName: ShortString;` |  | Unit name in which type is defined.
`);`
`tkHelper: (`
`HelperParent: PTypeInfo;` |  | Type information for parent helper class
`ExtendedInfo: PTypeInfo;` |  | Type information for the extended type (record or class).
`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
`);`
`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.
`);`
`tkInterface: (`
`IntfParent: PTypeInfo;` |  | Parent interface type data.
`IntfFlags: TIntfFlagsBase;` |  | Interface flags
`GUID: TGuid;` |  | GUID identification for interface
`IntfUnit: ShortString;` |  | Interface unit.
`);`
`tkInterfaceRaw: (`
`RawIntfParent: PTypeInfo;` |  | Raw interface parent.
`RawIntfFlags: TIntfFlagsBase;` |  | Raw interface parent flags.
`IID: TGuid;` |  | GUID identifying raw interface.
`RawIntfUnit: ShortString;` |  | Raw interface unit.
`IIDStr: ShortString;` |  | IID string representation of interface
`);`
`tkDynArray: (`
`elSize: PtrUInt;` |  | Dynamical array element size
`elType2: PPTypeInfo;` |  | Dynamical array Element type
`varType: LongInt;` |  | Dynamical array element type
`elType: PPTypeInfo;` |  | Dynamical array Element type
`DynUnitName: ShortStringBase;` |  | Unit name
`);`
`end;`

## Description

If the typeinfo kind is tkClass, then the property information follows the UnitName string, as an array of TPropInfo records.

Documentation generated on: Feb 26 2014