From 86ec0b5386fc2078891a829026844d2ec21ea7db Mon Sep 17 00:00:00 2001 From: Joel Klinghed Date: Wed, 8 Oct 2025 00:58:42 +0200 Subject: Add http module and implement basic http server --- src/logger.hh | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 src/logger.hh (limited to 'src/logger.hh') diff --git a/src/logger.hh b/src/logger.hh new file mode 100644 index 0000000..5c1e599 --- /dev/null +++ b/src/logger.hh @@ -0,0 +1,41 @@ +#ifndef LOGGER_HH +#define LOGGER_HH + +#include +#include +#include + +namespace logger { + +class Logger { + public: + virtual ~Logger() = default; + + virtual void err(std::string_view message) = 0; + virtual void warn(std::string_view message) = 0; + virtual void info(std::string_view message) = 0; + +#if defined(NDEBUG) + void dbg(std::string_view) {} +#else + virtual void dbg(std::string_view message) = 0; +#endif + + protected: + Logger() = default; + Logger(Logger const&) = delete; + Logger& operator=(Logger const&) = delete; +}; + +[[nodiscard]] +std::unique_ptr noop(); + +[[nodiscard]] +std::unique_ptr syslog(std::string ident, bool verbose = false); + +[[nodiscard]] +std::unique_ptr stderr(bool verbose = false); + +} // namespace logger + +#endif // LOGGER_HH -- cgit v1.2.3-70-g09d2