|
Click
|
A stackable ErrorHandler that exits when errors occur. More...
#include <error.hh>
Public Member Functions | |
| BailErrorHandler (ErrorHandler *errh, int level=el_error) | |
| Construct a BailErrorHandler. | |
| void | account (int level) |
| Account for an error message at level level. | |
Public Member Functions inherited from ErrorVeneer | |
| ErrorVeneer (ErrorHandler *errh) | |
| Construct an ErrorVeneer. | |
| String | vformat (const char *fmt, va_list val) |
| Format an error string. | |
| String | decorate (const String &str) |
| Decorate an error message. | |
| void * | emit (const String &str, void *user_data, bool more) |
| Output an error message line. | |
| void | account (int level) |
| Account for an error message at level level. | |
Public Member Functions inherited from ErrorHandler | |
| ErrorHandler () | |
| Construct an ErrorHandler. | |
| void | debug (const char *fmt,...) |
| Print a debug message (level el_debug). | |
| void | message (const char *fmt,...) |
| Print an informational message (level el_info). | |
| int | warning (const char *fmt,...) |
| Print a warning message (level el_warning). | |
| int | error (const char *fmt,...) |
| Print an error message (level el_error). | |
| int | fatal (const char *fmt,...) |
| Print a fatal error message (level el_fatal). | |
| void | ldebug (const String &landmark, const char *fmt,...) |
| Print a debug message with a landmark annotation. | |
| void | lmessage (const String &landmark, const char *fmt,...) |
| Print an informational message with a landmark annotation. | |
| int | lwarning (const String &landmark, const char *fmt,...) |
| Print a warning message with a landmark annotation. | |
| int | lerror (const String &landmark, const char *fmt,...) |
| Print an error message with a landmark annotation. | |
| int | lfatal (const String &landmark, const char *fmt,...) |
| Print a fatal error message with a landmark annotation. | |
| int | xmessage (const String &str) |
| Print an annotated error message. | |
| int | xmessage (const String &anno, const String &str) |
| Print an error message, adding annotations. | |
| int | xmessage (const String &anno, const char *fmt, va_list val) |
| Format and print an error message, adding annotations. | |
| int | xmessage (const String &landmark, const String &anno, const String &str) |
| Print an error message, adding landmark and other annotations. | |
| int | xmessage (const String &landmark, const String &anno, const char *fmt, va_list val) |
| Format and print an error message, adding landmark and other annotations. | |
| int | nerrors () const |
| Return the number of errors reported via this handler. | |
| String | format (const char *fmt,...) |
| Format an error string. | |
| virtual void | clear () |
| Clear accumulated error state. | |
Additional Inherited Members | |
Public Types inherited from ErrorHandler | |
| enum | Level { el_abort = -999 , el_fatal = -1 , el_emergency = 0 , el_alert = 1 , el_critical = 2 , el_error = 3 , el_warning = 4 , el_notice = 5 , el_info = 6 , el_debug = 7 } |
| Error level constants. More... | |
| enum | ConversionFlags { cf_zero_pad = 1 , cf_plus_positive = 2 , cf_space_positive = 4 , cf_left_just = 8 , cf_alternate_form = 16 , cf_singlequote = 32 , cf_uppercase = 64 , cf_signed = 128 , cf_negative = 256 , cf_utf8 = 1024 } |
| typedef String(* | ConversionFunction) (int flags, VA_LIST_REF_T) |
Static Public Member Functions inherited from ErrorHandler | |
| static ErrorHandler * | static_initialize (ErrorHandler *errh) |
| Initialize the ErrorHandler implementation. | |
| static void | static_cleanup () |
| Tear down the ErrorHandler implementation. | |
| static ErrorHandler * | default_handler () |
| Return the default ErrorHandler. | |
| static void | set_default_handler (ErrorHandler *errh) |
| Set the default ErrorHandler to errh. | |
| static ErrorHandler * | silent_handler () |
| Return the global silent ErrorHandler. | |
| static String | xformat (int default_flags, const char *fmt,...) |
| Format an error string. | |
| static String | vxformat (int default_flags, const char *fmt, va_list val) |
| static String | xformat (const char *fmt,...) |
| static String | vxformat (const char *fmt, va_list val) |
| static String | make_anno (const char *name, const String &value) |
| Create an error annotation. | |
| static String | combine_anno (const String &str, const String &anno) |
| Apply annotations from anno to every line in str. | |
| static const char * | parse_anno (const String &str, const char *begin, const char *end,...) ERRH_SENTINEL |
| Parse error annotations from a string. | |
| static const char * | skip_anno (const char *begin, const char *end) |
| Skip a string's error annotations. | |
| static String | make_landmark_anno (const String &x) |
| Return a landmark annotation equal to x. | |
| static String | clean_landmark (const String &landmark, bool colon=false) |
| Clean the landmark. | |
| static Conversion * | add_conversion (const String &name, ConversionFunction func) |
| static int | remove_conversion (Conversion *conversion) |
Static Public Attributes inherited from ErrorHandler | |
| static const char | e_abort [] = "<-999>" |
| Error level indicators. | |
| static const char | e_fatal [] = "<-1>" |
| static const char | e_emergency [] = "<0>" |
| static const char | e_alert [] = "<1>" |
| static const char | e_critical [] = "<2>" |
| static const char | e_error [] = "<3>" |
| static const char | e_warning [] = "<4>" |
| static const char | e_warning_annotated [] = "<4>warning: " |
| static const char | e_notice [] = "<5>" |
| static const char | e_info [] = "<6>" |
| static const char | e_debug [] = "<7>" |
| static const int | ok_result = 0 |
| static const int | error_result = -EINVAL |
A stackable ErrorHandler that exits when errors occur.
The stackable BailErrorHandler, available only at user level, causes the Click process to exit if an error worse than a configurable level occurs.
| BailErrorHandler::BailErrorHandler | ( | ErrorHandler * | errh, |
| int | level = el_error |
||
| ) |
Construct a BailErrorHandler.
| errh | base ErrorHandler |
| level | error level that causes premature exit |
An error message with level less than or equal to el_error will cause the process to exit with status 1.
|
virtual |
Account for an error message at level level.
| level | minimum error level in the message |
After calling emit() for the lines of an error message, ErrorHandler calls account(), passing the minimum (worst) error level of any message line (or 1000 if no line had a level). The default implementation updates the nerrors() counter. Some other ErrorHandlers add account() behavior that, for example, exits after printing messages at el_fatal level or below.
Reimplemented from ErrorHandler.