Unit 'System' Package
[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] [#rtl]

TVmt

Virtual method table layout.

Declaration

Source position: objpash.inc line 128

type TVmt = record

public

  vInstanceSize: SizeInt;

  

Class instance size.

  vInstanceSize2: SizeInt;

  

Duplicate of class instance size (should equal -vInstanceSize).

  vParentRef: PPVmt;

  

Parent reference.

  vClassName: PShortString;

  

Pointer to shortstring with classname.

  vDynamicTable: Pointer;

  

Pointer to table with dynamic methods.

  vMethodTable: Pointer;

  

Pointer to table with virtual methods.

  vFieldTable: Pointer;

  

Pointer to table with field information.

  vTypeInfo: Pointer;

  

Pointer to class type info record.

  vInitTable: Pointer;

  

Pointer to initialization information.

  vAutoTable: Pointer;

  

Pointer to Automation interfaces table.

  vIntfTable: pinterfacetable;

  

Pointer to interfaces table.

  vMsgStrPtr: pstringmessagetable;

  

Pointer to string message dispatch table.

  vDestroy: CodePointer;

  

Pointer to destructor.

  vNewInstance: CodePointer;

  

Pointer to NewInstance method.

  vFreeInstance: CodePointer;

  

Pointer to FreeInstance method.

  vSafeCallException: CodePointer;

  

?

  vDefaultHandler: CodePointer;

  

Pointer to default message handler.

  vAfterConstruction: CodePointer;

  

Pointer to afterconstruction method.

  vBeforeDestruction: CodePointer;

  

Pointer to beforeconstruction method.

  vDefaultHandlerStr: CodePointer;

  

Pointer to default string message handler.

  vDispatch: CodePointer;

  

Dispatch method pointer.

  vDispatchStr: CodePointer;

  

DispatchStr method pointer.

  vEquals: CodePointer;

  

Equals method pointer.

  vGetHashCode: CodePointer;

  

GetHashCode method pointer.

  vToString: CodePointer;

  

ToString method pointer.

  property vParent: PVmt; [r]

  

Pointer to parent VMT.

end;

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

PVmt

  

Pointer to TVMT record.


Documentation generated on: Jul 24 2023