2 Commits

Author SHA1 Message Date
Anton Bachin
08dbe47edd Added non-throwing versions of enum introduction functions.
These return values of an optional type better_enums::optional<T>. This type is
defined in the spirit of boost::optional<T> and std::optional<T>, but is easy to
manipulate at compile time. Two additional macros BETTER_ENUMS_USE_OPTIONAL and
BETTER_ENUMS_EXTRA_INCLUDE are honored, whose intent is for the user to be able
to inject an alternative option type. However, there are currently no viable
alternatives. boost::optional<T> does not play well with constexpr, and I failed
to make the code compile with std::optional<T>. I did not try very hard. I
intend to support std::optional<T> in the future. Perhaps it will be the
default, when available.
2015-05-18 17:15:38 -05:00
Anton Bachin
dd606fd450 Initial release. 2015-05-11 17:38:41 -04:00