tinyrpc/includes/log/logger.hpp

41 lines
660 B
C++

#pragma once
#include <iostream>
#include <ostream>
// #define LOGGER (std::cout << __FILE__ << ":" << __LINE__)
struct Logger {
Logger() = default;
template <typename T>
std::ostream& operator<<(T&& msg)
{
return std::cout << msg;
}
~Logger()
{
std::cout << std::endl;
}
};
struct IgnoreLogger {
IgnoreLogger() = default;
template <typename T>
IgnoreLogger& operator<<(T&& msg)
{
return *this;
}
~IgnoreLogger() = default;
};
#define logger() (Logger() << __FILE__ << ":" << __LINE__ << " ")
// #define logger1() (Logger() << __FILE__ << ":" << __LINE__ << " ")