// // logger_fwd.hpp // logger // // Created by Sam Jaffe on 9/3/16. // #pragma once #include namespace logging { enum class level : int; struct logpacket; std::ostream & operator<<(std::ostream & os, level l); struct location_info { char const * filename = "???"; int line = 0; char const * function = ""; }; #if defined( _WIN32 ) constexpr char const * const NEWLINE_TOKEN{"\r\n"}; #else constexpr char const * const NEWLINE_TOKEN{"\n"}; #endif } #define LIST_OF_LOGGING_LEVELS \ X(trace) X(debug) X(info) X(warning) X(error) X(critical) X(fatal) X(none) #define X(token) token, namespace logging { enum class level : int { LIST_OF_LOGGING_LEVELS warn = warning }; } #undef X