From ea4d8ee85f9318ef761895232c507ca21519f587 Mon Sep 17 00:00:00 2001 From: Isaac0-dev <62234577+Isaac0-dev@users.noreply.github.com> Date: Fri, 22 May 2026 09:41:44 +1000 Subject: [PATCH] remove DynosOption + add a static assert to DynOS Array (the rule is already followed, this is just for safety) --- data/dynos.cpp.h | 55 ++++-------------------------------------------- 1 file changed, 4 insertions(+), 51 deletions(-) diff --git a/data/dynos.cpp.h b/data/dynos.cpp.h index 7553e4d9a..0ae3d6e38 100644 --- a/data/dynos.cpp.h +++ b/data/dynos.cpp.h @@ -211,6 +211,10 @@ private: template class Array { + static_assert( + std::is_trivially_destructible_v, + "DynOS Array can only be used with types that have trivial destructors." + ); public: inline Array() : mBuffer(NULL), mCount(0), mCapacity(0) { } @@ -654,57 +658,6 @@ struct PackData { bool mLoaded; }; -typedef Pair Label; -struct DynosOption : NoCopy { - String mName; - String mConfigName; // Name used in the config file - Label mLabel; - Label mTitle; // Full caps label, displayed with colored font - DynosOption *mPrev; - DynosOption *mNext; - DynosOption *mParent; - bool mDynos; // true from create, false from convert - u8 mType; - - // TOGGLE - struct Toggle : NoCopy { - bool *mTog; - } mToggle; - - // CHOICE - struct Choice : NoCopy { - Array