Dev Essential  1.6.3
Loading...
Searching...
No Matches
error_description_impl.h
Go to the documentation of this file.
1
14
15#ifndef A_UTIL_UTIL_RESULT_IMPL_ERROR_DESCRIPTION_IMPL_HEADER_INCLUDED
16#define A_UTIL_UTIL_RESULT_IMPL_ERROR_DESCRIPTION_IMPL_HEADER_INCLUDED
17
19
20namespace a_util {
21namespace result {
22namespace detail {
23ErrorDescription::ErrorDescription(std::int32_t error_code,
24 const char* error_description,
25 std::int32_t line,
26 const char* file,
27 const char* function,
28 const char* error_label)
29 : _error_code(error_code),
30 _line_number(line),
31 _error_description(error_description),
32 _file_name(file),
33 _function_name(function),
34 _error_label(error_label)
35{
36}
37
39{
40 return _error_code;
41}
42
43std::int32_t ErrorDescription::getLine() const
44{
45 return _line_number;
46}
47
49{
50 return _error_description.c_str();
51}
52
54{
55 return _file_name.c_str();
56}
57
59{
60 return _function_name.c_str();
61}
62
64{
65 return _error_label.c_str();
66}
67
68template <typename T, template <typename = T> class ResultInfo>
70{
71 return ::a_util::result::ResultInfo<T>::getCode();
72}
73
74template <typename T, template <typename = T> class ResultInfo>
75std::int32_t ResultInfoDescription<T, ResultInfo>::getLine() const
76{
77 return -1;
78}
79
80template <typename T, template <typename = T> class ResultInfo>
81const char* ResultInfoDescription<T, ResultInfo>::getErrorDescription() const
82{
83 return "";
84}
85
86template <typename T, template <typename = T> class ResultInfo>
87const char* ResultInfoDescription<T, ResultInfo>::getFileName() const
88{
89 return "";
90}
91
92template <typename T, template <typename = T> class ResultInfo>
93const char* ResultInfoDescription<T, ResultInfo>::getFunctionName() const
94{
95 return "";
96}
97
98template <typename T, template <typename = T> class ResultInfo>
100{
101 return ::a_util::result::ResultInfo<T>::getLabel();
102}
103
104} // namespace detail
105} // namespace result
106} // namespace a_util
107
108#endif // A_UTIL_UTIL_RESULT_IMPL_ERROR_DESCRIPTION_IMPL_HEADER_INCLUDED
std::int32_t getLine() const
Get line in source file where the error was reported.
Definition error_description_impl.h:43
const char * getFunctionName() const
Get name of the function the error was reported in.
Definition error_description_impl.h:58
const char * getErrorCodeLabel() const
Get error code label.
Definition error_description_impl.h:63
const char * getErrorDescription() const
Get error code as string representation.
Definition error_description_impl.h:48
const char * getFileName() const
Get name of the file the error was reported in.
Definition error_description_impl.h:53
std::int32_t getErrorCode() const
Get error code.
Definition error_description_impl.h:38
std::int32_t getErrorCode() const override
Definition error_description_impl.h:69
const char * getErrorCodeLabel() const override
Definition error_description_impl.h:99
Serves as namespace for result implementation details.
Definition result.h:22
Serves as component for functionality handling error and return types.
Definition result.h:20
Serves as the root component, with common functionality documented in core functionality.
Definition base.h:24
Definition result_info_decl.h:86