#include "colors.hpp" #ifndef BIT_MACROS_HPP #define BIT_MACROS_HPP #define INFO(...) std::cout , "[INFO] " , __VA_ARGS__ , std::endl; #define WARN(...) std::cout , YELLOW , "[WARN] " , __VA_ARGS__ , RESET , std::endl; #define ERR(...) std::cout , RED , "[ERROR] " , __VA_ARGS__ , RESET , std::endl; #define CRIT(...) std::cout , BOLD , RED , "[CRIT] " , __VA_ARGS__ , RESET , std::endl; template std::ostream& operator,(std::ostream& out, const T& t) { out << t; return out; } //overloaded version to handle all those special std::endl and others... std::ostream& operator,(std::ostream& out, std::ostream&(*f)(std::ostream&)) { out << f; return out; } #endif //BIT_MACROS_HPP