From 7b25a097cdb3b46e3ee87d812b4e55464176d71b Mon Sep 17 00:00:00 2001 From: maxine Date: Tue, 13 Aug 2024 15:43:05 -0400 Subject: [PATCH] Made main.cpp more professional --- main.cpp | 91 ++++++++++++++++++++++++++--------------------- src/jlog/jlog.cpp | 1 + 2 files changed, 52 insertions(+), 40 deletions(-) diff --git a/main.cpp b/main.cpp index 838da6b..1be9ec8 100644 --- a/main.cpp +++ b/main.cpp @@ -12,61 +12,72 @@ int main() { using namespace mcolor; - jlog::info("This dick 1"); - jlog::debug("This dick 1"); - jlog::verbose("This dick 1"); - jlog::warning("This dick 1"); - jlog::error("This dick 1"); - jlog::fatal("This dick 1"); + jlog::Logger demo{"demo", Colors::Pinks::DeepPink}; + demo.SetTraceback(false); + demo(std::format("{}\n>\t{}\n>\t{}", + "Custom loggers such as this on can be easily created", + "jlog::Logger demo{\"demo\", Colors::Pinks::DeepPink};", "demo.SetTraceback(false);")); + // "Custom loggers such as this one can be easily created.")); + // Traceback is enabled on global Loggers by default + demo("Traceback is enabled on global Loggers by default"); + jlog::info("info message traceback"); + jlog::debug("debug message traceback"); + jlog::verbose("verbose message traceback"); + jlog::warning("warning message traceback"); + jlog::error("error message traceback"); + jlog::fatal("fatal message traceback"); + + // We can disable/enable traceback on a logger + demo("We can disable/enable traceback on a logger"); + demo("Disable = demo.SetTraceback(false);"); + demo.SetTraceback(true); + demo("Enable = demo.SetTraceback(true);"); + demo.SetTraceback(false); + + + // We can set the traceback for all the global loggers. + demo(std::format("{}\n>\t{}", "We can set the traceback for all the global loggers.", "jlog::SetTracebackOnGlobalLoggers(false);")); jlog::SetTracebackOnGlobalLoggers(false); - jlog::info.SetTraceback(true); - jlog::debug.SetTraceback(true); - jlog::verbose.SetTraceback(true); + jlog::info("info message"); + jlog::debug("debug message"); + jlog::verbose("verbose message"); + jlog::warning("warning message"); + jlog::error("error message"); + jlog::fatal("fatal message"); - jlog::info("This dick 2"); - jlog::debug("This dick 2"); - jlog::verbose("This dick 2"); - jlog::warning("This dick 2"); - jlog::error("This dick 2"); - jlog::fatal("This dick 2"); - + // We can enable/disable loggers. + demo(std::format("{}\n>\t{}\n>\t{}", "We can enable/disable loggers.", "jlog::info.Enable();", "jlog::info.Disable();")); + jlog::info.Enable(); + jlog::info("Logger enabled"); jlog::info.Disable(); - - jlog::info("This dick 3"); - jlog::debug("This dick 3"); - jlog::verbose("This dick 3"); - jlog::warning("This dick 3"); - jlog::error("This dick 3"); - jlog::fatal("This dick 3"); - + demo("You won't see the 'Logger disabled' message here since we just disabled it. Check main.cpp for proof."); + jlog::info("Logger disabled"); jlog::info.Enable(); - jlog::SetTracebackOnGlobalLoggers(false); + // We can also add event hooks to a logger. + demo(std::format("{}\n>\t{}\n>\t\t{}\n>\n>\t\t{}\n>\t{}", + "We can also add event hooks to a logger.", + "demo.OnLogEvent += [](std::vector t) {", + "jlog::token dbg = {.colorCode = jlog::debug.GetColorCode(), .content = \"This message is only seen when the event hook is added.\"};", + "jlog::log_to_console(jlog::toks2consoleMsg(std::vector{dbg}));", + "}" + )); - jlog::info("This dick 4"); - jlog::info.OnLogEvent += [](std::vector t) { - jlog::token dbg = {.colorCode = jlog::debug.GetColorCode(), .content = "This message is only seen when the event is called."}; + demo("Before event hook"); + + // Create and add event hook. + demo.OnLogEvent += [](std::vector t) { + jlog::token dbg = {.colorCode = jlog::debug.GetColorCode(), .content = "This message is only seen when the event hook is added."}; jlog::log_to_console(jlog::toks2consoleMsg(std::vector{dbg})); }; - jlog::info("This dick 4"); - - jlog::info.OnLogEvent += [](std::vector t) { - jlog::token dbg = {.colorCode = jlog::debug.GetColorCode(), .content = "This is the 2nd event message"}; - - jlog::log_to_console(jlog::toks2consoleMsg(std::vector{dbg})); - }; - - jlog::info("This dick 4"); - - jlog::info.SetTraceback(true); - jlog::info("This dick 4"); + demo("After event hook"); return 0; } diff --git a/src/jlog/jlog.cpp b/src/jlog/jlog.cpp index 074e197..5bb5b87 100644 --- a/src/jlog/jlog.cpp +++ b/src/jlog/jlog.cpp @@ -25,5 +25,6 @@ namespace jlog error.SetTraceback(enabled); fatal.SetTraceback(enabled); verbose.SetTraceback(enabled); + debug.SetTraceback(enabled); } }