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

Improved opaques - can now be used with extension methods

This commit is contained in:
Brian Fiete 2025-01-19 07:02:18 -08:00
parent c21be1eea1
commit 2f98e7f579
7 changed files with 72 additions and 26 deletions

View file

@ -560,6 +560,7 @@ public:
virtual bool IsVoidPtr() { return false; }
virtual bool CanBeValuelessType() { return false; }
virtual bool IsValuelessType() { BF_ASSERT(mSize != -1); BF_ASSERT(mDefineState >= BfTypeDefineState_Defined); return mSize == 0; }
virtual bool IsValuelessNonOpaqueType() { return IsValuelessType() && !IsOpaque(); }
virtual bool IsSelf() { return false; }
virtual bool IsDot() { return false; }
virtual bool IsVar() { return false; }
@ -2537,7 +2538,7 @@ public:
virtual bool IsUnspecializedType() override { return mElementType->IsUnspecializedType(); }
virtual bool IsUnspecializedTypeVariation() override { return mElementType->IsUnspecializedTypeVariation(); }
virtual bool CanBeValuelessType() override { return mElementType->CanBeValuelessType(); }
virtual bool IsValuelessType() override { return mElementType->IsValuelessType(); }
virtual bool IsValuelessType() override { return mElementType->IsValuelessNonOpaqueType(); }
};
class BfArrayType : public BfTypeInstance