32#ifndef FENNEC_CORE_LOGGER_H
33#define FENNEC_CORE_LOGGER_H
35#include <fennec/filesystem/file.h>
42class logger :
public singleton<logger> {
47 static void log(
const cstring& str,
48 uint32_t _line = FENNEC_BUILTIN_LINE(),
49 const char* _file = FENNEC_BUILTIN_FILE()
51 logger& inst = instance();
53 if (inst._logfile.is_open()) {
54 inst._logfile.print(cstring(_file, strlen(_file)));
55 inst._logfile.printf(
"({}): ", _line);
56 inst._logfile.println(str);
59 inst._cout->print(cstring(_file, strlen(_file)));
60 inst._cout->printf(
"({}): ", _line);
61 inst._cout->println(str);
64 static void log(
const string& str,
65 uint32_t _line = FENNEC_BUILTIN_LINE(),
66 const char* _file = FENNEC_BUILTIN_FILE()
68 logger& inst = instance();
70 if (inst._logfile.is_open()) {
71 inst._logfile.print(cstring(_file, strlen(_file)));
72 inst._logfile.printf(
"({}): ", _line);
73 inst._logfile.println(str);
76 inst._cout->print(cstring(_file, strlen(_file)));
77 inst._cout->printf(
"({}): ", _line);
78 inst._cout->println(str);
constexpr genType log(genType x)
Returns the natural logarithm of .
Definition exponential.h:149
A header containing the definition for a container with multiple values of differing types.