summaryrefslogtreecommitdiffstats
path: root/source/core/slang-rtti-info.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/core/slang-rtti-info.cpp')
-rw-r--r--source/core/slang-rtti-info.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/source/core/slang-rtti-info.cpp b/source/core/slang-rtti-info.cpp
index f53cf742f..043e6490a 100644
--- a/source/core/slang-rtti-info.cpp
+++ b/source/core/slang-rtti-info.cpp
@@ -39,6 +39,11 @@ struct RttiInfoManager
std::lock_guard<std::recursive_mutex> guard(m_mutex);
return m_arena.allocate(size);
}
+ void deallocateAll()
+ {
+ std::lock_guard<std::recursive_mutex> guard(m_mutex);
+ m_arena.reset();
+ }
static RttiInfoManager& getSingleton()
{
@@ -61,6 +66,11 @@ protected:
return RttiInfoManager::getSingleton().allocate(size);
}
+/* static */void RttiInfo::deallocateAll()
+{
+ return RttiInfoManager::getSingleton().deallocateAll();
+}
+
/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! StructRttiBuilder !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
static void _appendFixedArray(const FixedArrayRttiInfo* inFixedArray, StringBuilder& out)