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

# Reference for unit 'System': Types

`AnsiChar` |  | Alias for 1-byte sized char.
`Byte` |  | An unsigned 8-bits integer
`Cardinal` |  | An unsigned 32-bits integer.
`Char` |  | Character type (1 byte)
`CodePointer` |  | Code pointer (8/16 bit targets)
`CodePointer` |  | Code pointer (8/16 bit targets)
`CodePtrInt` |  | Signed Integer with same size as CodePointer
`CodePtrInt` |  | Signed Integer with same size as CodePointer
`CodePtrUInt` |  | Unsigned Integer with same size as CodePointer
`CodePtrUInt` |  | Unsigned Integer with same size as CodePointer
`Comp`
`DWord` |  | An unsigned 32-bits integer
`EnumResLangProc` |  | Callback for language resource enumeration
`EnumResNameProc` |  | Callback for resource name enumeration
`EnumResTypeProc` |  | Callback for resource type enumeration
`FarPointer` |  | Far pointer (8/16 bit targets)
`FileRec` |  | Untyped file type
`HGLOBAL` |  | Windows compatibility type for use in resources
`HMODULE` |  | Windows compatibility type for use in resources
`HRESULT` |  | 32-Bit signed integer.
`IInterface` |  | Basic interface for all COM based interfaces
`Int16` |  | A signed 16-bits integer
`Int32` |  | A signed 32-bits integer
`Int64` |  | 64-bit, signed integer
`Int8` |  | A signed 8-bits integer
`Integer` |  | A signed 16-bits integer
`IntegerArray` |  | Generic array of integer.
`IntPtr` |  | A signed integer with the same size in bytes as pointer
`jmp_buf` |  | Record type to store processor information.
`Longint` |  | A signed 32-bits integer
`Longword` |  | An unsigned 32-bits integer
`MAKEINTRESOURCE` |  | Alias for the PChar type.
`MarshaledAString` |  | Alias for PAnsiChar
`MarshaledString` |  | Alias for PWideChar
`NativeInt` |  | Alias for PtrInt
`NativeUInt` |  | Alias for PtrUInt
`OpaquePointer` |  | Type alias for POpaqueData
`PAnsiChar` |  | Alias for PChar type.
`PAnsiString` |  | Pointer to an ansistring type.
`PBoolean` |  | Pointer to a Boolean type.
`PBoolean16`
`PBoolean32`
`PBoolean64`
`PBoolean8`
`PByte` |  | Pointer to byte type
`PByteBool`
`pcalldesc` |  | Pointer to TCallDesc record.
`PCardinal` |  | Pointer to Cardinal type
`PChar` |  | Pointer to null-terminated string.
`PClass` |  | Pointer to TClass
`PCodePointer` |  | Pointer to CodePointer
`PCurrency` |  | Pointer to currency type.
`PDate` |  | Pointer to a TDateTime type.
`PDateTime` |  | Pointer to TDatetime
`PDispatch` |  | Pointer to IDispatch interface type
`pdispdesc` |  | Pointer to tdispdesc record
`PDouble` |  | Pointer to double-sized float value.
`PDWord` |  | Pointer to DWord type
`pdynarrayindex` |  | Pointer to tdynarrayindex type.
`pdynarraytypeinfo` |  | Pointer to TDynArrayTypeInfo type.
`PError` |  | Pointer to an Error type.
`PEventState` |  | Pointer to EventState, which is an opaque type.
`PExceptAddr` |  | Pointer to exception address record
`PExceptObject` |  | Pointer to Exception handler procedural type TExceptProc
`PExtended` |  | Pointer to extended-sized float value.
`PFileTextRecChar` |  | Pointer to TFileTextRecChar
`PGuid` |  | Pointer to TGUID type.
`PInt16` |  | Pointer to Int16 type
`PInt32` |  | Pointer to Int32 type
`PInt64` |  | Pointer to Int64 type
`PInt8` |  | Pointer to Int8 type
`PInteger` |  | Pointer to integer type
`PIntegerArray` |  | Pointer to IntegerArray type
`PInterface` |  | Pointer to IInterface interface
`pinterfaceentry` |  | Pointer to tinterfaceentry record.
`pinterfacetable` |  | Pointer to tinterfacetable record.
`PIntPtr` |  | Pointer to IntPtr type
`PJmp_buf` |  | Pointer to jmp_buf record
`PLongBool` |  | Pointer to a LongBool type.
`PLongint` |  | Pointer to Longint type
`PLongWord` |  | Pointer to LongWord type
`PMarshaledAString` |  | Pointer to PWideChar
`PMarshaledString` |  | Pointer to PWideChar
`PMemoryManager` |  | Pointer to TMemoryManager record
`PMethod` |  | Pointer to method
`PMsgStrTable` |  | Pointer to array of TMsgStrTable records.
`PNativeInt` |  | Pointer to NativeInt type
`PNativeUInt` |  | Pointer to NativeInt type
`PointerArray` |  | Generic pointer array.
`POleVariant` |  | Pointer to OleVariant type.
`POpaqueData` |  | Pointer to unknown data
`PPAnsiChar` |  | Alias for PPChar type.
`PPByte` |  | Pointer to PByte type.
`PPChar` |  | Pointer to an array of pointers to null-terminated strings.
`PPCharArray` |  | Pointer to TPCharArray type.
`PPCodePointer` |  | Pointer to PCodePointer
`PPDispatch` |  | Pointer to PDispatch pointer type
`PPDouble` |  | Pointer to PDouble type.
`ppdynarraytypeinfo` |  | Pointer to pdynarraytypeinfo
`PPLongint` |  | Pointer to PLongint type.
`PPointer` |  | Pointer to a pointer type.
`PPointerArray` |  | Pointer to PointerArray type
`PPPAnsiChar` |  | Pointer to PPAnsichar
`PPPChar` |  | Pointer to PPChar.
`PPPointer` |  | Pointer to a PPointer type.
`PPPWideChar` |  | Pointer to PPWideChar type.
`PPtrInt` |  | Pointer to PtrInt type.
`PPtrUInt` |  | Pointer to unsigned integer of pointer size
`PPUnknown` |  | Pointer to untyped pointer
`PPVmt` |  | Pointer to PVMT pointer.
`PPWideChar` |  | Pointer to link id="PWideChar"> type.
`PQWord` |  | Pointer to QWord type
`PQWordBool`
`PRawByteString` |  | Pointer to RawByteString
`PRTLCriticalSection` |  | Pointer to #rtl.system.TRTLCriticalSection type.
`PRTLEvent` |  | Pointer to RTLEvent, which is an opaque type.
`PShortInt` |  | Pointer to shortint type
`PShortString` |  | Pointer to a shortstring type.
`PSingle` |  | Pointer to single-sized float value.
`PSizeInt` |  | Pointer to a SizeInt type
`PSizeUInt` |  | Pointer to SizeUint
`PSmallInt` |  | Pointer to smallint type
`pstringmessagetable` |  | Pointer to TStringMessageTable record.
`PText` |  | Pointer to text file.
`PtrInt` |  | Signed integer type with same size as Pointer.
`PtrInt` |  | Signed integer type with same size as Pointer.
`PtrUInt` |  | Unsigned integer type with same size as Pointer.
`PtrUInt` |  | Unsigned integer type with same size as Pointer.
`PUCS2Char` |  | Pointer to UCS2Char character.
`PUCS4Char` |  | Pointer to UCS4Char
`PUCS4CharArray` |  | Pointer to array of UCS4Char characters.
`PUInt16` |  | Pointer to UInt16 type
`PUInt32` |  | Pointer to UInt32 type
`PUInt64` |  | Pointer to UInt64
`PUInt8` |  | Pointer to UInt8 type
`PUintPtr` |  | Pointer to UIntPtr type
`PUnicodeChar` |  | Pointer to Unicode character
`PUnicodeString` |  | Pointer to unicodestring
`PUnknown` |  | Untyped pointer
`PUTF8Char` |  | Pointer to UTF8Char
`PUTF8String` |  | Pointer to UTF8String
`pvararray` |  | Pointer to TVarArray type.
`pvararraybound` |  | Pointer to tvararraybound type.
`pvararrayboundarray` |  | Pointer to tvararrayboundarray type.
`pvararraycoorarray` |  | Pointer to tvararraycoorarray type.
`pvardata` |  | Pointer to TVarData record.
`PVariant` |  | Pointer to Variant type.
`pvariantmanager` |  | Pointer to TVariantManager record.
`PVarRec` |  | Pointer to TVarRec type.
`PVmt` |  | Pointer to TVMT record
`PWideChar` |  | Pointer to WChar.
`PWideString` |  | Pointer to widestring type
`PWord` |  | Pointer to word type
`PWordBool` |  | Pointer to a WordBool type.
`QWord` |  | 64-bit unsigned integer
`RawByteString` |  | Single-byte character string without specified codepage
`Real` |  | Alias for real type
`Real48` |  | TP compatible real type (6 bytes) definition
`Shortint` |  | A signed 8-bits integer
`SizeInt` |  | Signed integer type which fits for sizes
`SizeInt` |  | Signed integer type which fits for sizes
`SizeUInt` |  | Unsigned Integer type which fits for sizes
`SizeUInt` |  | Unsigned Integer type which fits for sizes
`Smallint` |  | A signed 16-bits integer
`TAbstractErrorProc` |  | Abstract error handler procedural type.
`TAllocateThreadVarsHandler` |  | Threadvar allocation callback type for TThreadManager.
`TAnsiChar` |  | Alias for 1-byte sized char.
`TAssertErrorProc` |  | Assert error handler procedural type.
`TBacktraceStrFunc` |  | Type for formatting of backtrace dump.
`TBasicEventCreateHandler` |  | callback type for creating eventstate in TThreadManager.
`TBasicEventHandler` |  | Generic callback type for handling eventstate in TThreadManager.
`TBasicEventWaitForHandler` |  | Wait for basic event callback type for TThreadManager.
`TBeginThreadHandler` |  | Callback for thread start in TThreadManager.
`TBoundArray` |  | Dynamic array of integer.
`tcalldesc` |  | COM/OLE dispatch call argument description.
`TClass` |  | Class of TObject.
`TCompareOption` |  | How to compare strings
`TCompareOptions` |  | Set of TCompareOption
`TCriticalSectionHandler` |  | Generic callback type for critical section handling in TThreadManager.
`TCriticalSectionHandlerTryEnter` |  | Function prototype for TryEnterCriticalsection
`TCtrlBreakHandler` |  | CTRL-C Handler prototype
`TDate` |  | Alias for TDateTime type.
`TDateTime` |  | Encoded Date-Time type.
`tdispdesc` |  | COM/OLE dispatch call description.
`TDoubleRec` |  | Extended value record
`tdynarrayindex` |  | Type with the correct size for index into a dynamic array.
`tdynarraytypeinfo` |  | Type information for a dynamic array.
`TDynLibsManager` |  | Dynamic library loading support
`TEndThreadHandler` |  | Callback for thread end in TThreadManager.
`TEntryInformation` |  | Executable entry point information structure
`TEntryInformationOS` |  | Entry information for the OS
`TError` |  | Error type, used in variants.
`TErrorProc` |  | Standard error handler procedural type.
`TExceptAddr` |  | Exception stack address descriptor
`TExceptObject` |  | Exception object
`TExceptProc` |  | Exception handler procedural type
`TextBuf` |  | Text buffer
`TExtended80Rec` |  | Extended value record
`TextFile` |  | Alias for Text file type.
`TextRec` |  | Text file type
`TFileTextRecChar` |  | Character type for the filename part in file records
`TFloatSpecial` |  | Special floating point values
`TFPCHeapStatus` |  | Record describing the state of the default FPC heap manager.
`TFPResourceHandle` |  | Handle to resource
`TFPResourceHGLOBAL` |  | TFPResourceHGLOBAL
`TFPResourceHMODULE` |  | Handle to module containing resource
`TFPUException` |  | Type describing Floating Point processor exceptions.
`TFPUExceptionMask` |  | Set of TFPUException
`TFPUPrecisionMode` |  | Type describing the default precision for Floating Point math.
`TFPURoundingMode` |  | How to round floating point values
`TGetCurrentThreadIdHandler` |  | Callback type for retrieving thread ID in TThreadManager.
`TGetLoadErrorStrHandler` |  | Get last load error description string handler type
`TGetProcAddressHandler` |  | Get procedure address handler type
`TGetProcAddressOrdinalHandler` |  | Get procdure address by ordinal handler type
`TGuid` |  | Standard GUID representation type.
`THandle` |  | Type alias.
`THeapStatus` |  | Record describing current heap status.
`TInitThreadVarHandler` |  | Threadvar initialization callback type for TThreadManager.
`TInterfacedClass` |  | TObject descendent implementing the IInterface interface
`tinterfaceentry` |  | Interfaces table entry.
`tinterfaceentrytype` |  | Dispatch interface entry type
`tinterfacetable` |  | Record to store list of interfaces of a class.
`TLibHandle` |  | Library handle type
`TLineEndStr` |  | Line ending string type
`TLoadLibraryAHandler` |  | >Load library (ansistring) handler type
`TLoadLibraryUHandler` |  | Load library (unicode) handler type
`TMemoryManager` |  | Record describing the current memory manager
`TMethod` |  | Record describing a method.
`TMsgStrTable` |  | Record used in string message handler table.
`TOpaqueData` |  | Empty record
`TOrdinalEntry` |  | Ordinal of entry point (windows only)
`TPCharArray` |  | Array of PChar
`TProcedure` |  | Simple procedural type.
`TReleaseThreadVarsHandler` |  | Threadvar release callback type for TThreadManager.
`TRelocateThreadVarHandler` |  | Threadvar relocalization callback type for TThreadManager.
`TResourceHandle` |  | Handle to a resource, for use in the resource loading routines
`TResourceManager` |  | Resource manager definition
`TRTLCreateEventHandler` |  | Callback type for creating a TRTLEvent type in TThreadManager.
`TRTLCRITICALSECTION` |  | A critical section.
`TRTLEventHandler` |  | Generic TRTLEvent handling type for TThreadManager.
`TRTLEventHandlerTimeout` |  | TRTLEvent timeout handling type for TThreadManager.
`trtlmethod` |  | Callback type for synchronization event.
`TRuntimeError` |  | Type of runtime-error for the Error procedure
`TSafeCallErrorProc` |  | Prototype for the safecall error handler
`TSemaphoreDestroyHandler` |  | Function prototype for destroying a semaphore
`TSemaphorePostHandler` |  | Function prototype for posting an event to a semaphore
`TSemaphoreWaitHandler` |  | Function prototype to wait on a semaphore
`TSempahoreInitHandler` |  | Function prototype for initializing a semaphore
`TSingleRec` |  | Extended value record
`TStandardCodePageEnum` |  | Description of standard used codepages
`TStringMessageTable` |  | String message table container for class.
`TSystemCodePage` |  | System code page
`TTextBuf` |  | Alias for TextBuf
`TTextLineBreakStyle` |  | Text line break style. (end of line character)
`TThreadFunc` |  | Thread function prototype
`TThreadGetPriorityHandler` |  | Callback type for thread priority getting in TThreadManager.
`TThreadHandler` |  | Generic thread handler callback for TThreadManager.
`TThreadID` |  | Type for Thread-IDs
`TThreadManager` |  | Thread manager record.
`TThreadSetPriorityHandler` |  | Callback type for thread priority setting in TThreadManager.
`TThreadSetThreadDebugNameHandlerA`
`TThreadSetThreadDebugNameHandlerU`
`TThreadSwitchHandler` |  | Callback type for thread switch in TThreadManager.
`TTime` |  | Alias for TDateTime type.
`TTypeKind` |  | Type of a property or value.
`TUCS4CharArray` |  | Array of UCS4Char characters.
`TUnicodeStringManager` |  | Unicode string manager
`TUnloadLibraryHandler` |  | Unload library handler type
`tvararray` |  | Type describing variant array
`tvararraybound` |  | Type describing variant array bounds.
`tvararrayboundarray` |  | array of tvararraybound records.
`tvararraycoorarray` |  | Array of variant array coordinates
`tvardata` |  | Variant record.
`tvariantmanager` |  | Record describing the variant manager.
`tvarop` |  | Variant operation.
`TVarRec` |  | Record describing an element in an array of const
`tvartype` |  | Type with size of variant type.
`TVmt` |  | Virtual method table layout
`TWaitForThreadTerminateHandler` |  | Callback type for thread termination in TThreadManager.
`TWideStringManager` |  | Record containing the various callbacks of the widestring manager.
`UCS2Char` |  | UCS2 Unicode character.
`UCS4Char` |  | UCS Unicode character (unsigned 32 bit word)
`UCS4String` |  | String of UCS4Char characters.
`UInt16` |  | An unsigned 16-bits integer
`UInt32` |  | An unsigned 32-bits integer
`UInt64` |  | Unsigned 64-bit integer
`UInt8` |  | An unsigned 8-bits integer
`UIntPtr` |  | An unsigned integer with the same size in bytes as pointer
`UnicodeChar` |  | Unicode string character
`UnicodeString` |  | A string consisting of widechars.
`UTF8Char` |  | Single byte character
`UTF8String` |  | UTF-8 Unicode (Ansi) string.
`ValReal` |  | Largest available floating point type
`ValSInt` |  | Val-Signed integer.
`ValSInt` |  | Val-Signed integer.
`ValUInt` |  | Val-unsigned integer
`ValUInt` |  | Val-unsigned integer
`WChar` |  | Wide char (16-bit sized char)
`WideChar` |  | The base two byte character type
`WideString` |  | UTF-16 widechar encoded unicode string
`Word` |  | An unsigned 16-bits integer