Alien-libpanda
view release on metacpan or search on metacpan
src/panda/log.cc view on Meta::CPAN
const char* whitespaces = " "; // 24 spaces
if (total < 24) {
whitespaces += total;
} else {
whitespaces = "";
}
stream << cp.file << ":" << cp.line << whitespaces;
return stream;
}
std::ostream& operator<< (std::ostream& stream, const escaped& str) {
for (auto c : str.src) {
if (c > 31) {
stream << c;
} else {
stream << "\\" << std::setfill('0') << std::setw(2) << uint32_t(uint8_t(c));
}
}
return stream;
}
src/panda/log.h view on Meta::CPAN
void set_level (Level, const string& name = "");
void set_logger (ILogger*);
template <class Func, typename = std::enable_if_t<!std::is_base_of<ILogger, std::remove_cv_t<std::remove_pointer_t<Func>>>::value>>
void set_logger (const Func& f) { set_logger(new details::CallbackLogger<Func>(f)); }
inline bool should_log (Level level, const CodePoint& cp, const Module& module) {
return level >= module.level && details::ilogger && details::ilogger->should_log(level, cp);
}
struct escaped {
string_view src;
};
std::ostream& operator<< (std::ostream&, const escaped&);
}
}
extern panda::log::Module* panda_log_module;
( run in 0.667 second using v1.01-cache-2.11-cpan-c21f80fb71c )