Files
Nuake-custom/Nuake/src/Core/Core.h
2021-09-20 06:49:45 -04:00

26 lines
533 B
C++

#pragma once
#include <memory>
#include <map>
#include <string>
#include <vector>
#define ASSERT(x) if (!(x)) assert(false)
template<typename T>
using Ref = std::shared_ptr<T>;
template<typename T>
using Scope = std::unique_ptr<T>;
template<typename T, typename ... Args>
constexpr Ref<T> CreateRef(Args&& ... args)
{
return std::make_shared<T>(std::forward<Args>(args)...);
}
template<typename T, typename ... Args>
constexpr Scope<T> CreateScope(Args&& ... args)
{
return std::make_unique<T>(std::forward<Args>(args)...);
}