#pragma once #include "format.hpp" #include #include #include inline void log(FILE *_stream, eFormatType type, std::string str) { std::println(_stream, "{}", NFormatter::fmt(type, str)); } inline void log(eFormatType type, std::string str) { log(stdout, type, str); } template void log(FILE *_stream, eFormatType type, std::format_string fmt, Args &&...args) { log(_stream, type, std::format(fmt, std::forward(args)...)); } template void log(eFormatType type, std::format_string fmt, Args &&...args) { log(stdout, type, std::format(fmt, std::forward(args)...)); }