TheBrokenRail fd720d2321
All checks were successful
CI / Build (push) Successful in 15s
Small Tweak
2025-03-31 00:42:13 -04:00

16 lines
548 B
C++

#define __PREVENT_DESTRUCTION(self) \
~self() = delete
#define __PREVENT_JUST_CONSTRUCTION(self) \
self() = delete
#define __PREVENT_CONSTRUCTION(self) \
__PREVENT_JUST_CONSTRUCTION(self); \
__PREVENT_DESTRUCTION(self)
#define __PREVENT_COPY(self) \
self(const self &) = delete; \
self &operator=(const self &) = delete
template <typename T>
static constexpr decltype(sizeof(T)) __real_sizeof() {
return sizeof(std::conditional_t<std::is_reference_v<T>, void *, T>);
}
template <typename T>
using __make_reference = T &;