* provide access to the method table for raw interfaces (it is written even though $M is not respected by such interfaces currently)

git-svn-id: trunk@35411 -
This commit is contained in:
svenbarth 2017-02-10 16:03:57 +00:00
parent fd1047c715
commit 870bffc70d

View File

@ -377,6 +377,7 @@ unit typinfo;
function GetUnitName: ShortString; inline;
function GetIIDStr: ShortString; inline;
function GetPropertyTable: PPropData; inline;
function GetMethodTable: PIntfMethodTable; inline;
public
Parent: PPTypeInfo;
Flags : TIntfFlagsBase;
@ -384,6 +385,7 @@ unit typinfo;
property UnitName: ShortString read GetUnitName;
property IIDStr: ShortString read GetIIDStr;
property PropertyTable: PPropData read GetPropertyTable;
property MethodTable: PIntfMethodTable read GetMethodTable;
private
UnitNameField: ShortString;
{ IIDStr: ShortString; }
@ -2703,6 +2705,10 @@ begin
Result := aligntoptr(p);
end;
function TInterfaceRawData.GetMethodTable: PIntfMethodTable;
begin
Result := aligntoptr(PropertyTable^.Tail);
end;
{ TTypeData }