This data structure stores multiple error message to keep track of more than only one error to enable the user to obtain a more detailed view on the cause of an error. The data structure supports three modes of operation to handle overflows, i.e., the case when more than a certain number of errors occurred:
The maximum number of errors is defined by a compile time constant, fid_ERROR_MAX. What mode to choose depends on the kind of error, i.e., depends on the application context.
Definition at line 69 of file error.h.
#include <error.h>
Data Fields | |
int | num_of_errors |
Number of errors collected. | |
int | first_error |
Index of the first error message in fid_Error::errors. | |
fid_Errormode | mode |
How to handle many errors. | |
int | overflow |
Set to true if error messages have been lost due to overflows. | |
int | outofmem |
Set to true if an error could not be handled properly due to out-of-memory condition. | |
char * | errors [fid_ERROR_MAX] |
Error messages. |
Number of errors collected.
Definition at line 71 of file error.h.
Referenced by fid_error_dump(), fid_error_free(), fid_error_init(), and fid_error_throw().
Index of the first error message in fid_Error::errors.
Definition at line 72 of file error.h.
Referenced by fid_error_dump(), fid_error_free(), and fid_error_init().
How to handle many errors.
Definition at line 74 of file error.h.
Referenced by fid_error_dump(), fid_error_init(), and fid_error_throw().
Set to true if error messages have been lost due to overflows.
Definition at line 75 of file error.h.
Referenced by fid_error_dump(), fid_error_free(), fid_error_init(), and fid_error_throw().
Set to true if an error could not be handled properly due to out-of-memory condition.
Definition at line 77 of file error.h.
Referenced by fid_error_dump(), fid_error_free(), fid_error_init(), and fid_error_throw().
char* fid_Error::errors[fid_ERROR_MAX] |
Error messages.
Definition at line 79 of file error.h.
Referenced by fid_error_dump(), fid_error_free(), and fid_error_init().