![]() |
cppassist
1.0.0.f4fab4f962ff
C++ sanctuary for small but powerful and frequently required, stand alone features.
|
Stream interface to build LogMessage's from different kinds of primitive types. More...
#include <cppassist/include/cppassist/logging/LogMessageBuilder.h>
Public Types | |
using | PrecisionManipulator = decltype(std::setprecision(0)) |
using | FillManipulator = decltype(std::setfill( '0')) |
using | WidthManipulator = decltype(std::setw(0)) |
Protected Attributes | |
int | m_level |
Current log level. More... | |
AbstractLogHandler * | m_handler |
Log handler (must NOT be null!) More... | |
std::string | m_context |
User define context string. More... | |
std::shared_ptr< std::stringstream > | m_stream |
Used string stream. More... | |
Stream interface to build LogMessage's from different kinds of primitive types.
The LogMessageBuilder is usually created by one of the global functions log, debug, warning, error or fatal. It works similar to streams and accepts a number of different types which will be converted to strings automatically. When it goes out of scope, it creates a LogMessage from all streamed objects and sends it to the log handler.
Typical usage of the LogMessageBuilder:
using cppassist::LogMessageBuilder::PrecisionManipulator = decltype(std::setprecision(0)) |
using cppassist::LogMessageBuilder::FillManipulator = decltype(std::setfill('0')) |
using cppassist::LogMessageBuilder::WidthManipulator = decltype(std::setw(0)) |
cppassist::LogMessageBuilder::LogMessageBuilder | ( | int | level, |
AbstractLogHandler * | handler, | ||
const std::string & | context | ||
) |
Constructor.
[in] | level | Log level |
[in] | handler | Log handler (must NOT be null!) |
[in] | context | User defined context string |
cppassist::LogMessageBuilder::LogMessageBuilder | ( | const LogMessageBuilder & | builder | ) |
Copy constructor.
[in] | builder | Source object |
|
virtual |
Destructor.
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | const char * | c | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | const std::string & | str | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | bool | b | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | char | c | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | int | i | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | float | f | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | double | d | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | long double | d | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | unsigned | u | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | long | l | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | long long | l | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | unsigned long | ul | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | unsigned long long | ull | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | unsigned char | uc | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | const void * | pointer | ) |
LogMessageBuilder & cppassist::LogMessageBuilder::operator<< | ( | const T * | pointer | ) |
LogMessageBuilder & cppassist::LogMessageBuilder::operator<< | ( | const std::vector< T > & | vector | ) |
References cppassist::vector< T, SIMD_SIZE >::size().
LogMessageBuilder & cppassist::LogMessageBuilder::operator<< | ( | const std::array< T, Count > & | array | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | std::ostream &(*)(std::ostream &) | manipulator | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | std::ios_base &(*)(std::ios_base &) | manipulator | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | PrecisionManipulator | manipulator | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | FillManipulator | manipulator | ) |
LogMessageBuilder& cppassist::LogMessageBuilder::operator<< | ( | WidthManipulator | manipulator | ) |
|
protected |
Current log level.
|
protected |
Log handler (must NOT be null!)
|
protected |
User define context string.
|
protected |
Used string stream.