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
..
1-basic.cc Added non-throwing versions of enum introduction functions. 2015-05-18 17:15:38 -05:00
2-iterate.cc Removed range properties. 2015-05-18 09:29:35 -05:00
3-switch.cc Initial release. 2015-05-11 17:38:41 -04:00
4-constexpr.cc Removed range properties. 2015-05-18 09:29:35 -05:00
5-containers.cc Initial release. 2015-05-11 17:38:41 -04:00
6-traits.cc Removed range properties. 2015-05-18 09:29:35 -05:00
7-bitset.cc Removed range properties. 2015-05-18 09:29:35 -05:00
8-constexpr-iterate.cc Removed range properties. 2015-05-18 09:29:35 -05:00
Makefile Initial release. 2015-05-11 17:38:41 -04:00