flatten 20260225

This commit is contained in:
Timothy Prepscius
2026-02-25 12:43:06 -05:00
commit 996151a56a
521 changed files with 46722 additions and 0 deletions

42
tjp/core/debug/Allocations.cpp Executable file
View File

@@ -0,0 +1,42 @@
// License: Modified MIT (NON-AI)
// See the LICENSE file in the root directory for license information.
// Copyright 2025 Timothy Prepscius
#include "Allocations.h"
#include <sstream>
namespace tjp::core::debug {
void Allocations::onAllocation (const type_index &t)
{
auto l = lock_of(mutex);
allocations[t.name()].count++;
}
void Allocations::onDeallocation (const type_index &t)
{
auto l = lock_of(mutex);
allocations[t.name()].count--;
}
String Allocations::log ()
{
std::ostringstream ss;
for (auto &[id, a]: allocations)
{
if (a.count)
ss << id << ": " << a.count << std::endl;
}
return ss.str();
}
Allocations *Allocations::shared()
{
static Allocations *allocations = new Allocations();
return allocations;
}
} // namespace