rakhimov/scram

Redesign Exception classes w/ boost::exception

rakhimov opened this issue · 0 comments

The current scram exception classes
are string-ly context & error carriers,
which are noexcept-incorrect, localization unfriendly, and inflexible.
For example, dealing with libxml2 errors in this manner is a nightmare.

Boost exception library provides a solid framework
to properly design exception classes.

  • No error message construction at throw site
  • Provide more context data
  • Build the context data incrementally
  • Generic
  • Error message construction only at report site (front-ends)
  • Coherent and consistent design

The new design should help with proper libxml2 error extraction (#218)
and translation & localization of error messages (#216).