Logger System 0.1.3
High-performance C++20 thread-safe logging system with asynchronous capabilities
Loading...
Searching...
No Matches
kcenon::logger::result< T > Class Template Reference

#include <error_codes.h>

Collaboration diagram for kcenon::logger::result< T >:
Collaboration graph

Public Member Functions

 result (T &&value)
 
 result (const T &value)
 
 result (logger_error_code code, const std::string &msg="")
 
 result (const common::error_info &error)
 
 result (common::error_info &&error)
 
bool has_value () const
 
 operator bool () const
 
T & value ()
 
const T & value () const
 
logger_error_code error_code () const
 
const std::string & error_message () const
 
const common::Result< T > & raw () const
 

Static Public Member Functions

static result ok_value (const T &value)
 

Private Attributes

common::Result< T > value_
 

Detailed Description

template<typename T>
class kcenon::logger::result< T >
Examples
critical_logging_example.cpp, custom_writer_example.cpp, di_pattern_example.cpp, and monitoring_integration_example.cpp.

Definition at line 436 of file error_codes.h.

Constructor & Destructor Documentation

◆ result() [1/5]

template<typename T >
kcenon::logger::result< T >::result ( T && value)
inline

◆ result() [2/5]

template<typename T >
kcenon::logger::result< T >::result ( const T & value)
inline

Definition at line 443 of file error_codes.h.

◆ result() [3/5]

template<typename T >
kcenon::logger::result< T >::result ( logger_error_code code,
const std::string & msg = "" )
inline

Definition at line 446 of file error_codes.h.

448 static_cast<int>(code),
449 msg.empty() ? logger_error_to_string(code) : msg,
450 "logger_system"}) {}
std::string logger_error_to_string(logger_error_code code)
Convert logger_error_code to string representation.

◆ result() [4/5]

template<typename T >
kcenon::logger::result< T >::result ( const common::error_info & error)
inlineexplicit

Definition at line 452 of file error_codes.h.

453 : value_(error) {}

◆ result() [5/5]

template<typename T >
kcenon::logger::result< T >::result ( common::error_info && error)
inlineexplicit

Definition at line 455 of file error_codes.h.

456 : value_(std::move(error)) {}

Member Function Documentation

◆ error_code()

template<typename T >
logger_error_code kcenon::logger::result< T >::error_code ( ) const
inline
Examples
/home/runner/work/logger_system/logger_system/include/kcenon/logger/core/error_codes.h.

Definition at line 472 of file error_codes.h.

472 {
473 return static_cast<logger_error_code>(value_.error().code);
474 }
logger_error_code
Error codes specific to the logger system.

References kcenon::logger::result< T >::value_.

◆ error_message()

template<typename T >
const std::string & kcenon::logger::result< T >::error_message ( ) const
inline
Examples
/home/runner/work/logger_system/logger_system/include/kcenon/logger/core/error_codes.h, and critical_logging_example.cpp.

Definition at line 476 of file error_codes.h.

476 {
477 return value_.error().message;
478 }

References kcenon::logger::result< T >::value_.

Referenced by example_production_setup().

Here is the caller graph for this function:

◆ has_value()

template<typename T >
bool kcenon::logger::result< T >::has_value ( ) const
inline
Examples
/home/runner/work/logger_system/logger_system/include/kcenon/logger/core/error_codes.h, and custom_writer_example.cpp.

Definition at line 466 of file error_codes.h.

466{ return value_.is_ok(); }

References kcenon::logger::result< T >::value_.

Referenced by main(), and kcenon::logger::result< T >::operator bool().

Here is the caller graph for this function:

◆ ok_value()

template<typename T >
static result kcenon::logger::result< T >::ok_value ( const T & value)
inlinestatic
Examples
/home/runner/work/logger_system/logger_system/include/kcenon/logger/core/error_codes.h.

Definition at line 459 of file error_codes.h.

459 {
461 // Directly assign common::Result value
462 res.value_ = common::ok<T>(value);
463 return res;
464 }

References kcenon::common::ok(), kcenon::logger::success, kcenon::logger::result< T >::value(), and kcenon::logger::result< T >::value_.

Referenced by kcenon::logger::logger::get_current_metrics().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator bool()

template<typename T >
kcenon::logger::result< T >::operator bool ( ) const
inlineexplicit

Definition at line 467 of file error_codes.h.

467{ return has_value(); }

References kcenon::logger::result< T >::has_value().

Here is the call graph for this function:

◆ raw()

template<typename T >
const common::Result< T > & kcenon::logger::result< T >::raw ( ) const
inline

◆ value() [1/2]

template<typename T >
T & kcenon::logger::result< T >::value ( )
inline

◆ value() [2/2]

template<typename T >
const T & kcenon::logger::result< T >::value ( ) const
inline

Definition at line 470 of file error_codes.h.

470{ return value_.value(); }

References kcenon::logger::result< T >::value_.

Member Data Documentation

◆ value_


The documentation for this class was generated from the following file: