Adds further ext deps as-is binaries copies from customers env.
Qt6 Migration CI / migrate (push) Canceled after 0s
Qt6 Migration CI / migrate (push) Canceled after 0s
This commit is contained in:
3700 files changed
+2132394
No files matched your search
@@ -0,0 +1,55 @@
|
||||
#pragma once
|
||||
|
||||
#include <cstddef>
|
||||
#include <iostream>
|
||||
|
||||
#ifdef __GNUG__
|
||||
#include <cstdlib>
|
||||
#include <memory>
|
||||
#include <cxxabi.h>
|
||||
#endif
|
||||
|
||||
//#define DDKIT_ENABLE_LIFETIME_LOGGER
|
||||
|
||||
namespace ddkit {
|
||||
namespace utils {
|
||||
namespace log {
|
||||
|
||||
|
||||
template <typename Type>
|
||||
class LifetimeLogger {
|
||||
public:
|
||||
LifetimeLogger() {
|
||||
#ifdef DDKIT_ENABLE_LIFETIME_LOGGER
|
||||
std::cerr << "Constructor of:\t" << typeName() << " @ " << this << std::endl;
|
||||
#endif
|
||||
}
|
||||
|
||||
~LifetimeLogger() {
|
||||
#ifdef DDKIT_ENABLE_LIFETIME_LOGGER
|
||||
std::cerr << "Destructor of: \t" << typeName() << " @ " << this << std::endl;
|
||||
#endif
|
||||
}
|
||||
|
||||
private:
|
||||
std::string typeName() const {
|
||||
#ifdef __GNUG__
|
||||
const char* mangled = typeid(Type).name();
|
||||
|
||||
int status = 0;
|
||||
char* name = abi::__cxa_demangle(mangled, nullptr, nullptr, &status);
|
||||
if(status == 0) {
|
||||
std::string demangledName(name);
|
||||
delete name;
|
||||
return demangledName;
|
||||
}
|
||||
return mangled;
|
||||
#else
|
||||
return typeid(Type).name();
|
||||
#endif
|
||||
}
|
||||
};
|
||||
|
||||
} // namespace log
|
||||
} // namespace utils
|
||||
} // namespace ddkit
|
||||
Reference in new issue
Block a user