mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2025-04-28 13:17:58 +03:00
25 lines
570 B
C++
25 lines
570 B
C++
#include "ObjectExtension.h"
|
|
|
|
ObjectExtension& ObjectExtension::GetInstance() {
|
|
static ObjectExtension instance;
|
|
return instance;
|
|
}
|
|
|
|
ObjectExtension::Id ObjectExtension::RegisterId() {
|
|
return NextId++;
|
|
}
|
|
|
|
void ObjectExtension::Free(const void* object) {
|
|
if (object == nullptr) {
|
|
return;
|
|
}
|
|
|
|
std::erase_if(Data, [&object](const auto& iter) {
|
|
auto const& [key, value] = iter;
|
|
return key.first == object;
|
|
});
|
|
}
|
|
|
|
extern "C" void ObjectExtension_Free(const void* object) {
|
|
ObjectExtension::GetInstance().Free(object);
|
|
}
|