For demonstration purposes the library was intentionally designed to use relevant C++23 features.
In fact, considering level of support by compilers, only the following standard facilities were used:
error reporting by default is done using std::expected;
std::to_underlying is used.
Regarding std::expected: configurable error reporting (#9) can be leveraged to support client-specified error reporting facilities.
Utility std::to_underlying has trivial implementation.
Research is needed to define scope and breakdown of the issue
For demonstration purposes the library was intentionally designed to use relevant C++23 features.
In fact, considering level of support by compilers, only the following standard facilities were used:
std::expected
;std::to_underlying
is used.Regarding
std::expected
: configurable error reporting (#9) can be leveraged to support client-specified error reporting facilities. Utilitystd::to_underlying
has trivial implementation.Research is needed to define scope and breakdown of the issue