Compare commits
1 Commits
Prerelease
...
Prerelease
Author | SHA1 | Date | |
---|---|---|---|
7ab579fa0b |
@@ -47,7 +47,6 @@ namespace jlog
|
|||||||
|
|
||||||
void log(std::vector<token> tokens);
|
void log(std::vector<token> tokens);
|
||||||
|
|
||||||
void direct (const std::string& message);
|
|
||||||
void info (const std::string& message);
|
void info (const std::string& message);
|
||||||
void verbose(const std::string& message);
|
void verbose(const std::string& message);
|
||||||
|
|
||||||
@@ -59,4 +58,21 @@ namespace jlog
|
|||||||
|
|
||||||
void fatal (const std::string& message);
|
void fatal (const std::string& message);
|
||||||
|
|
||||||
|
|
||||||
|
void info_spec(const std::string& message, const std::string& func, const std::string& file, int line);
|
||||||
|
void verbose_spec(const std::string& message, const std::string& func, const std::string& file, int line);
|
||||||
|
void debug_spec(const std::string& message, const std::string& func, const std::string& file, int line);
|
||||||
|
void warning_spec(const std::string& message, const std::string& func, const std::string& file, int line);
|
||||||
|
void error_spec(const std::string& message, const std::string& func, const std::string& file, int line);
|
||||||
|
void fatal_spec(const std::string& message, const std::string& func, const std::string& file, int line);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#define INFO(i) jlog::info_spec(i, __PRETTY_FUNCTION__, __FILE__, __LINE__);
|
||||||
|
#define VERBOSE(i) jlog::verbose_spec(i, __PRETTY_FUNCTION__, __FILE__, __LINE__);
|
||||||
|
#define DEBUG(i) jlog::debug_spec(i, __PRETTY_FUNCTION__, __FILE__, __LINE__);
|
||||||
|
#define WARNING(i) jlog::warning_spec(i, __PRETTY_FUNCTION__, __FILE__, __LINE__);
|
||||||
|
#define ERROR(i) jlog::error_spec(i, __PRETTY_FUNCTION__, __FILE__, __LINE__);
|
||||||
|
#define FATAL(i) jlog::fatal_spec(i, __PRETTY_FUNCTION__, __FILE__, __LINE__);
|
||||||
|
14
main.cpp
14
main.cpp
@@ -1,15 +1,15 @@
|
|||||||
#include <jlog/ansi_escape_codes.hpp>
|
#include <jlog/ansi_escape_codes.hpp>
|
||||||
#include <jlog/jlog.hpp>
|
#include <jlog/jlog.hpp>
|
||||||
|
|
||||||
|
|
||||||
int main()
|
int main()
|
||||||
{
|
{
|
||||||
jlog::info("Do the needful!");
|
INFO("Do the needful!");
|
||||||
jlog::debug("Debugging Message 123");
|
DEBUG("Debugging Message 123");
|
||||||
jlog::error("Big problem!");
|
ERROR("Big problem!");
|
||||||
jlog::verbose("Irrelevant message...");
|
VERBOSE("Irrelevant message...");
|
||||||
jlog::warning("Our software suite is only supported on C++20! Get with it grampa.");
|
WARNING("Our software suite is only supported on C++20! Get with it grampa.");
|
||||||
jlog::fatal("FUCK BRO");
|
|
||||||
|
FATAL("Real Fuckin Error");
|
||||||
return 0;
|
return 0;
|
||||||
///
|
///
|
||||||
}
|
}
|
@@ -103,10 +103,67 @@ namespace jlog {
|
|||||||
auto timestamp = token{.content = get_timestamp()};
|
auto timestamp = token{.content = get_timestamp()};
|
||||||
auto severity = token{.colorCode = ansi_escape_codes::FG_BRIGHT_RED, .content = "FATAL"};
|
auto severity = token{.colorCode = ansi_escape_codes::FG_BRIGHT_RED, .content = "FATAL"};
|
||||||
auto content = token{.content = message, .delimiter = ""};
|
auto content = token{.content = message, .delimiter = ""};
|
||||||
auto trace = token{.content = __PRETTY_FUNCTION__};
|
|
||||||
auto source = std::source_location::current();
|
log({timestamp, severity, content});
|
||||||
auto file = token{.content = std::format("{}:{}", __FILE__, __LINE__)};
|
|
||||||
log({timestamp, trace, file, severity, content});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void info_spec(const std::string &message, const std::string &func, const std::string &file,
|
||||||
|
int line) {
|
||||||
|
auto timestamp = token{.content = get_timestamp()};
|
||||||
|
auto severity = token{.colorCode = ansi_escape_codes::FG_WHITE, .content = "INFO"};
|
||||||
|
auto content = token{.content = message, .delimiter = ""};
|
||||||
|
auto trace = token{.content = func};
|
||||||
|
auto filedata = token{.content = std::format("{}:{}", file, line)};
|
||||||
|
log({timestamp, trace, filedata, severity, content});
|
||||||
|
}
|
||||||
|
|
||||||
|
void verbose_spec(const std::string &message, const std::string &func, const std::string &file,
|
||||||
|
int line) {
|
||||||
|
auto timestamp = token{.content = get_timestamp()};
|
||||||
|
auto severity = token{.colorCode = ansi_escape_codes::FG_CYAN, .content = "VERBOSE"};
|
||||||
|
auto content = token{.content = message, .delimiter = ""};
|
||||||
|
auto trace = token{.content = func};
|
||||||
|
auto filedata = token{.content = std::format("{}:{}", file, line)};
|
||||||
|
log({timestamp, trace, filedata, severity, content});
|
||||||
|
}
|
||||||
|
|
||||||
|
void debug_spec(const std::string &message, const std::string &func, const std::string &file,
|
||||||
|
int line) {
|
||||||
|
auto timestamp = token{.content = get_timestamp()};
|
||||||
|
auto severity = token{.colorCode = ansi_escape_codes::FG_GREEN, .content = "DEBUG"};
|
||||||
|
auto content = token{.content = message, .delimiter = ""};
|
||||||
|
auto trace = token{.content = func};
|
||||||
|
auto filedata = token{.content = std::format("{}:{}", file, line)};
|
||||||
|
log({timestamp, trace, filedata, severity, content});
|
||||||
|
}
|
||||||
|
|
||||||
|
void warning_spec(const std::string &message, const std::string &func, const std::string &file,
|
||||||
|
int line) {
|
||||||
|
auto timestamp = token{.content = get_timestamp()};
|
||||||
|
auto severity = token{.colorCode = ansi_escape_codes::FG_YELLOW, .content = "WARNING"};
|
||||||
|
auto content = token{.content = message, .delimiter = ""};
|
||||||
|
auto trace = token{.content = func};
|
||||||
|
auto filedata = token{.content = std::format("{}:{}", file, line)};
|
||||||
|
log({timestamp, trace, filedata, severity, content});
|
||||||
|
}
|
||||||
|
|
||||||
|
void error_spec(const std::string &message, const std::string &func, const std::string &file,
|
||||||
|
int line) {
|
||||||
|
auto timestamp = token{.content = get_timestamp()};
|
||||||
|
auto severity = token{.colorCode = ansi_escape_codes::FG_RED, .content = "ERROR"};
|
||||||
|
auto content = token{.content = message, .delimiter = ""};
|
||||||
|
auto trace = token{.content = func};
|
||||||
|
auto filedata = token{.content = std::format("{}:{}", file, line)};
|
||||||
|
log({timestamp, trace, filedata, severity, content});
|
||||||
|
}
|
||||||
|
|
||||||
|
void fatal_spec(const std::string &message, const std::string &func, const std::string &file,
|
||||||
|
int line) {
|
||||||
|
auto timestamp = token{.content = get_timestamp()};
|
||||||
|
auto severity = token{.colorCode = ansi_escape_codes::FG_BRIGHT_RED, .content = "FATAL"};
|
||||||
|
auto content = token{.content = message, .delimiter = ""};
|
||||||
|
auto trace = token{.content = func};
|
||||||
|
auto filedata = token{.content = std::format("{}:{}", file, line)};
|
||||||
|
log({timestamp, trace, filedata, severity, content});
|
||||||
|
}
|
||||||
}
|
}
|
Reference in New Issue
Block a user