Ion
|
Internal logging implementation. More...
Classes | |
class | Logger |
This class is used for regular logging. More... | |
class | NullLogger |
This class is used to disable logging, while still allowing for log messages to contain '<<' expressions. More... | |
class | SingleLogger |
This class prints a message only the first time it is created for the passed file_name and line_number . More... | |
class | ThrottledLogger |
This class prints a message only if the passed file_name and line_number has not printed a message in a certain amount of time. More... | |
Functions | |
template<typename T > | |
T & | CheckNotNullCommon (const char *expr_string, T &t) |
Helpers for CHECK_NOTNULL(). More... | |
template<typename T > | |
T * | CheckNotNull (const char *expr_string, T *t) |
template<typename T > | |
T & | CheckNotNull (const char *expr_string, T &t) |
template<typename T > | |
const T & | CheckNotNull (const char *expr_string, const T &t) |
This extra overload is needed to support non-const rvalues of non-pointer type. More... | |
Internal logging implementation.
Should not be used by client code. Classes and variables are in an internal namespace to avoid polluting the Ion namespace.
T* ion::base::logging_internal::CheckNotNull | ( | const char * | expr_string, |
T * | t | ||
) |
Definition at line 354 of file logging.h.
References CheckNotNullCommon().
T& ion::base::logging_internal::CheckNotNull | ( | const char * | expr_string, |
T & | t | ||
) |
Definition at line 359 of file logging.h.
References CheckNotNullCommon().
const T& ion::base::logging_internal::CheckNotNull | ( | const char * | expr_string, |
const T & | t | ||
) |
This extra overload is needed to support non-const rvalues of non-pointer type.
For example, it enables the following use-case: CHECK_NOTNULL(make_scoped_ptr<T>(MakeT()));
Without this overload, the above code wouldn't compile.
Definition at line 371 of file logging.h.
References CheckNotNullCommon().
T& ion::base::logging_internal::CheckNotNullCommon | ( | const char * | expr_string, |
T & | t | ||
) |
Helpers for CHECK_NOTNULL().
Two are necessary to support both raw pointers and smart pointers.
Definition at line 346 of file logging.h.
References ion::base::logging_internal::Logger::CheckMessage(), ion::port::FATAL, and ION_LOG.
Referenced by CheckNotNull().