Template based exceptions - these are simple and practical
and avoid the proliferation of exception types. Although not
syntatactically ideal, it is convenient and eminently practical.
Embedded Control Library
The embedded control libraries provide and internally make
use of a variety of error mechanisms tailored to suit
different situations. For lean and mean, there are c
style error functions and macros in ecl_errors.
At a higher level, there are template based
exceptions, these are defined in this library.
These are further enabled via the use of macros which allow
code location (file and line #) reporting as well as
debug mode only handling.
Compiling & Linking
Include the following at the top of any translation unit:
// The exception classes
// Posix Tools
// Error flags (from ecl_errors)
You will also need to link to <i>-lecl_exceptions</i>.
- @ref errorsExceptions "Exceptions" - notes on ecl exception handling.
- src/examples/exceptions.cpp : coverage style test for exceptions.
- src/examples/exception_tracer.cpp : getting a bactrace via exceptions, posix style.
- ecl_core_apps/src/benchmarks/exceptions.cpp : benchmarks the latencies for exception handling.
- <b>Feb 11</b> : Moved exception classes here from ecl_errors.