1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-10 20:42:21 +02:00

Improved virtual overrides in extensions

This commit is contained in:
Brian Fiete 2022-05-07 11:40:55 -07:00
parent 8a84647bcd
commit e1d7939081
11 changed files with 116 additions and 11 deletions

View file

@ -1903,16 +1903,22 @@ public:
class BfCeTypeInfo;
struct BfReifyMethodDependency
{
public:
BfNonGenericMethodRef mDepMethod;
int mMethodIdx;
};
// Instance of struct or class
class BfTypeInstance : public BfDependedType
{
public:
public:
int mSignatureRevision;
int mLastNonGenericUsedRevision;
int mInheritanceId;
int mInheritanceCount;
BfModule* mModule;
BfTypeDef* mTypeDef;
BfTypeInstance* mBaseType;
BfCustomAttributes* mCustomAttributes;
@ -1920,12 +1926,12 @@ public:
BfTypeInfoEx* mTypeInfoEx;
BfGenericTypeInfo* mGenericTypeInfo;
BfCeTypeInfo* mCeTypeInfo;
Array<BfTypeInterfaceEntry> mInterfaces;
Array<BfTypeInterfaceMethodEntry> mInterfaceMethodTable;
Array<BfTypeInterfaceMethodEntry> mInterfaceMethodTable;
Array<BfMethodInstanceGroup> mMethodInstanceGroups;
Array<BfOperatorInfo*> mOperatorInfo;
Array<BfVirtualMethodEntry> mVirtualMethodTable;
Array<BfVirtualMethodEntry> mVirtualMethodTable;
Array<BfReifyMethodDependency> mReifyMethodDependencies;
BfHotTypeData* mHotTypeData;
int mVirtualMethodTableSize; // With hot reloading, mVirtualMethodTableSize can be larger than mInterfaceMethodTable (live vtable versioning)
Array<BfFieldInstance> mFieldInstances;