Commit Graph

  • e784f0c860 Made enum class (strict) conversion opt-in on a global basis. Anton Bachin 2015-05-23 21:46:34 -05:00
  • 5ce9537d66 Made all-constexpr (slow) enums an opt-in feature. Anton Bachin 2015-05-23 21:30:08 -05:00
  • 156b9d9b04 Used explicit inline functions to simplify type hierarchy, also simplified iterables names. Anton Bachin 2015-05-23 21:00:36 -05:00
  • d0e4d9ffaa Fixed problem with multiple compilation units under C++98. Anton Bachin 2015-05-23 15:56:05 -05:00
  • 6bcca9bc8c Refactored using more higher-order macros. Anton Bachin 2015-05-23 14:50:21 -05:00
  • 96c274a708 Made comparison operators global to simplify them. Anton Bachin 2015-05-23 10:17:07 -05:00
  • d01aacd454 Prefixed .to_* methods with underscores to avoid name conflicts. Anton Bachin 2015-05-23 10:14:59 -05:00
  • 5d27fd83cf Fixed incorrect definition of optional::operator ->. Anton Bachin 2015-05-23 10:10:24 -05:00
  • a2d738a913 Renamed remaining uppercased types in public interface to lowercase. Anton Bachin 2015-05-19 16:36:43 -05:00
  • 832dad561f Modifications to support aggressive compiler warning levels. Ben Alex 2015-05-27 11:18:51 +10:00
  • f74de74604 Port to C++98 with variadic macros. Anton Bachin 2015-05-19 16:16:41 -05:00
  • 1b3d1cc784 Forbade nearly all implicit conversions to integral types. Anton Bachin 2015-05-18 19:41:58 -05:00
  • 08dbe47edd Added non-throwing versions of enum introduction functions. Anton Bachin 2015-05-18 17:15:38 -05:00
  • d9bd109172 Removed range properties. Anton Bachin 2015-05-18 09:26:38 -05:00
  • 1cfe53e827 Option to opt in to implicit conversion to enum class instead of enum. Anton Bachin 2015-05-18 00:53:00 -05:00
  • 10c9977a9c Minimally updated documentation. Anton Bachin 2015-05-17 22:49:24 -05:00
  • 6c60edcc46 Subscript operator for iterables and tests for constexpr iterators. Anton Bachin 2015-05-17 22:13:44 -05:00
  • 14bc834f7d Made to_string conversion constexpr and removed the last of the weak symbols. Anton Bachin 2015-05-17 21:16:59 -05:00
  • 1465901bc1 Removed most weak symbols. Iterators should now be random access. Anton Bachin 2015-05-17 18:47:51 -05:00
  • 460bb806a3 Eliminated separate map macro file and inlined its contents into enum.h. Anton Bachin 2015-05-16 18:01:54 -05:00
  • e28177b11a Updated documentation with new front page. Anton Bachin 2015-05-15 09:24:44 -05:00
  • e7a093709f Added contact information to README. Anton Bachin 2015-05-14 07:39:22 -05:00
  • dd606fd450 Initial release. 0.8.0 Anton Bachin 2015-05-11 16:44:37 -04:00
  • 3ac5e84cf9 Purged out-of-date documentation. traits Anton Bachin 2015-05-05 17:49:02 -04:00
  • 216f026fe1 Converted to traits interface. Anton Bachin 2015-05-05 17:42:20 -04:00
  • 2895867224 Added sample with default_ trait. Anton Bachin 2015-05-05 15:33:52 -04:00
  • a444bf349d Added samples. Anton Bachin 2015-05-05 14:58:05 -04:00
  • b887363abd Renamed to/from_int to *_integral. Anton Bachin 2015-05-05 14:52:57 -04:00
  • 0a2ca77369 Simplified pp_map_gen.py and some internals. Anton Bachin 2015-05-05 13:44:35 -04:00
  • 8fdaa54e08 Restored separate compilation support. Anton Bachin 2015-05-03 20:18:06 -04:00
  • 5e9026c615 Factored out common iterator code. Anton Bachin 2015-05-03 15:24:44 -04:00
  • 4035284a0a Completed rename and combined former Enum.h/EnumInternal.h. Anton Bachin 2015-05-03 15:04:04 -04:00
  • 8d7021975c Renamed files with lowercase naming convention. Anton Bachin 2015-05-03 15:00:28 -04:00
  • 0a45b5c968 Slightly reorganized internal code and removed old TODOs. Anton Bachin 2015-05-03 14:53:37 -04:00
  • 8fcf28a5fe Made comparison operators constexpr. Anton Bachin 2015-05-03 05:45:52 -04:00
  • 571f1419c7 Flattened class hierarchy. Anton Bachin 2015-05-03 05:43:29 -04:00
  • b0d3d3ac53 Added type name. Anton Bachin 2015-05-03 05:11:01 -04:00
  • bc0bbb65d8 Added constexpr range information. Anton Bachin 2015-05-03 05:07:24 -04:00
  • 2992a7f45d Replaced _names() and _values() with constexpr iterables. Anton Bachin 2015-05-02 22:52:24 -04:00
  • f55d2b56dc Made basic interface constexpr and made default cast checked. Anton Bachin 2015-04-29 05:53:46 -04:00
  • 2127b89dd4 Changed internal representation to enum instead of integer. Anton Bachin 2015-04-29 04:01:41 -04:00
  • a006577374 Interface simplification - collapsed _Internal and Enum and reduced number of names in class scope. Anton Bachin 2015-04-29 03:32:18 -04:00
  • c3bc7c535a Simplified iterables. Anton Bachin 2015-04-28 06:42:26 -04:00
  • 48e4fd73bf Added missing stdexcept include to EnumInternal.h. Anton Bachin 2015-04-27 11:16:25 -04:00
  • ba380d34f3 Improved naming in public interface. Anton Bachin 2015-04-27 11:09:36 -04:00
  • aab5d8c668 Explicitly deleted default constructor. Anton Bachin 2015-04-27 10:29:04 -04:00
  • 6aa19e9b4a Removed notions of default and bad values and all special value names (e.g. _bad). Anton Bachin 2015-04-25 12:15:00 -04:00
  • 91e5cb945c Additional changes (mostly std:: prefixes) to make code compile outside of HRT context. Anton Bachin 2015-04-22 20:43:47 -04:00
  • 4d7aea0bbd Fixed warnings related to dropping of implicit const in C++14. Anton Bachin 2015-04-22 20:25:38 -04:00
  • bdd7efe48d Switched to relative paths for header files. Anton Bachin 2015-04-22 20:24:14 -04:00
  • 214fe36e7f Generated macros for enums with up to 256 members. Anton Bachin 2015-04-22 20:21:38 -04:00
  • d0be0beff1 Initial version. Anton Bachin 2015-04-22 20:21:07 -04:00
  • f54960590a .gitignore Anton Bachin 2015-04-22 15:59:50 -04:00