Browse Source

Added type TInterfaceEntryType, EntryType field in TInterfaceEntry. Used in "implements"-implementation

git-svn-id: trunk@4354 -
chrivers 19 years ago
parent
commit
3e1c0cc8a5
1 changed files with 8 additions and 4 deletions
  1. 8 4
      rtl/inc/objpash.inc

+ 8 - 4
rtl/inc/objpash.inc

@@ -107,12 +107,16 @@
                  );
                  );
        end;
        end;
 
 
+       // This enumerate is found both in the rtl and compiler. Do not change the order of the fields.
+       tinterfaceentrytype = (etStandard, etVirtualMethodResult, etStaticMethodResult, etFieldValue);
+
        pinterfaceentry = ^tinterfaceentry;
        pinterfaceentry = ^tinterfaceentry;
        tinterfaceentry = record
        tinterfaceentry = record
-         IID     : pguid; { if assigned(IID) then Com else Corba}
-         VTable  : Pointer;
-         IOffset : PtrInt;
-         IIDStr  : pshortstring; { never nil. Com: upper(GuidToString(IID^)) }
+         IID       : pguid; { if assigned(IID) then Com else Corba}
+         VTable    : Pointer;
+         IOffset   : PtrInt;
+         IIDStr    : pshortstring; { never nil. Com: upper(GuidToString(IID^)) }
+         EntryType : tinterfaceentrytype;
        end;
        end;
 
 
        pinterfacetable = ^tinterfacetable;
        pinterfacetable = ^tinterfacetable;