Sign in Join
FPDoc Onlineexperiment

TVmt record

In unit System

Virtual method table layout.

Declaration

pascal
TVmt = record

Description

TVMT is a record describing the VMT of a class. It's various fields represent the available information in the VMT, as far as it is common to all classes.

See also

Properties

vParentpublicPointer to parent VMT.

Fields

vInstanceSizepublicClass instance size.
vInstanceSize2publicDuplicate of class instance size (should equal -vInstanceSize).
vParentRefpublicParent reference.
vClassNamepublicPointer to shortstring with classname.
vDynamicTablepublicPointer to table with dynamic methods.
vMethodTablepublicPointer to table with virtual methods.
vFieldTablepublicPointer to table with field information.
vTypeInfopublicPointer to class type info record.
vInitTablepublicPointer to initialization information.
vAutoTablepublicPointer to Automation interfaces table.
vIntfTablepublicPointer to interfaces table.
vMsgStrPtrpublicPointer to string message dispatch table.
vDestroypublicPointer to destructor.
vNewInstancepublicPointer to NewInstance method.
vFreeInstancepublicPointer to FreeInstance method.
vSafeCallExceptionpublic?
vDefaultHandlerpublicPointer to default message handler.
vAfterConstructionpublicPointer to afterconstruction method.
vBeforeDestructionpublicPointer to beforeconstruction method.
vDefaultHandlerStrpublicPointer to default string message handler.
vDispatchpublicDispatch method pointer.
vDispatchStrpublicDispatchStr method pointer.
vEqualspublicEquals method pointer.
vGetHashCodepublicGetHashCode method pointer.
vToStringpublicToString method pointer.

An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.