1
0
Fork 0
mirror of https://github.com/Neargye/magic_enum.git synced 2026-01-09 23:34:23 +00:00
Commit graph

360 commits

Author SHA1 Message Date
Daniil Goncharov
ca89c5425b
Update README.md 2022-03-02 21:26:02 +02:00
Pavel I. Kryukov
c9388f1c99
Fix docs (#144) 2022-02-19 13:09:33 +02:00
Pavel I. Kryukov
ec87fc976c
Convert std::enable_if_t to static_assert for cleaner error message (#146) 2022-02-19 12:26:06 +02:00
Bela Schaum
29285919fd
change std::size_t to std::uintmax_t (#141) 2022-02-18 23:37:24 +02:00
Bela Schaum
9268bb3042
Case insensivity based on #112 (#139) 2022-02-18 23:31:36 +02:00
Bela Schaum
07181c5a11
support gcc8 with defined MAGIC_ENUM_NO_CHECK_SUPPORT and with specialized magic_enum::customize::enum_name (#137) 2022-02-18 17:52:09 +02:00
neargye
4e39c3ba55 clean-up 2022-02-16 19:18:43 +02:00
neargye
756b139368 remove throw from enum_fuse 2022-02-16 19:01:14 +02:00
neargye
9bfb90760a clean-up 2022-02-11 18:54:59 +02:00
Pavel I. Kryukov
5444f00a04
Use bitwise OR for magic_enum::enum_fuse (#131) 2022-02-11 18:35:50 +02:00
neargye
e7b9231906 fix enum_fuse if values out of range 2022-02-11 01:14:05 +02:00
neargye
63ff515163 clean-up 2022-02-10 20:17:44 +02:00
Pavel I. Kryukov
1f8e29b140
Add enum fusing function (#127) 2022-02-10 19:58:59 +02:00
v1nh1shungry
22242a613a
fix enum_type_name (#129) 2022-02-06 21:59:53 +02:00
neargye
db69b213b0 fix doc 2022-02-05 00:17:05 +02:00
rpatters1
ab2bf820e1
remove static assert for static string because it does not solve issue (#125) 2022-01-29 18:46:28 +02:00
neargye
08089871af enum_range more snifae-friendly 2022-01-27 19:33:37 +02:00
neargye
9ed19fb9e9 move is_flags to customize::enum_range
force set the enum-flag true or false
2022-01-27 15:34:41 +02:00
rpatters1
a8c9e57fbe
fix #122 add static_assert to limit size of N in static_string (#123) 2022-01-25 20:14:23 +02:00
Daniil Goncharov
1f9e8c2993 update 2022-01-24 22:58:35 +02:00
neargye
dc162ff65a update ci 2022-01-23 17:38:12 +02:00
neargye
4ed0b743e8 update 2022-01-17 11:52:18 +02:00
neargye
e136070bc8 update 2022-01-09 02:27:37 +02:00
Daniil Goncharov
aecf0db795
New enum-flags API (#120) 2022-01-08 17:30:44 +02:00
neargye
6a1db3b8b6 add tests 2022-01-04 22:00:03 +02:00
neargye
e500ae7f00 fix flag::enum_value 2022-01-04 21:49:22 +02:00
neargye
103cc617ba update 2021-12-28 18:20:31 +02:00
Gabriel-Andrew Pollo Guilbert
7ba70d48b4
Add simple meson.build to make this repository as a subproject (#113) 2021-12-02 23:27:44 +02:00
neargye
7c6b66fcff update doc & examples 2021-11-30 00:02:34 +02:00
neargye
aa1a304860 update doc 2021-11-26 17:41:22 +02:00
neargye
f4738bef44 fix hard-limit on enum range 2021-11-26 11:15:46 +02:00
Florian Becker
5bc2689fa5
Some code quality (#110) 2021-11-05 19:24:11 +02:00
neargye
c7a0c83ed4 constexpr_for not work on vs2017 2021-10-09 02:40:44 +03:00
neargye
018673a0a4 add tests constexpr_for 2021-10-09 02:22:59 +03:00
neargye
0325167113 add compile time get value 2021-10-09 02:13:27 +03:00
Komachin
38f86e4d09
Added support for non-ASCII characters (UNIX/Linux) (#95) 2021-08-09 17:44:30 +03:00
neargye
5d6e0e7707 update doc 2021-08-09 11:23:28 +03:00
neargye
b19a54c272 clean-up 2021-08-04 16:30:10 +03:00
Alexander Karatarakis
41c916432b
Fix underflow in out of range check (#88)
* Special case bool in cmp_less to avoid msvc's warnings

* Fix underflow in out of range check

The previous fix addressed bool but it seems that was not the heart
of the issue.

The problem is that (lhs - 1) can underflow.

Another example of the check trigger when it shouldn't is:
uint8_t with min_value set to 0 and a value of uint8_t::max
lhs-1 would underflow and find max (see added test).

The issue happens when lhs == rhs. To avoid that situation: flip the if-else!
`cmp_less(rhs, lhs)`means that rhs is strictly less than lhs, so
the check will not trigger when lhs == rhs.

Also, cleanup the bool special-case, as it is no longer necessary.

Note: for the bug to manifest, it is important that the min
of the enums is customized to be 0, so corresponding enum_range
specializations need to be present in the regression tests.
2021-06-25 15:00:54 +03:00
neargye
b927151677 update tests 2021-06-24 17:52:04 +03:00
neargye
739942ab7d fix enums with underlying type bool 2021-06-24 11:48:37 +03:00
neargye
5003c436d6 update readme 2021-06-24 11:46:20 +03:00
neargye
3d1f6a5a2a v0.7.3 2021-06-21 21:00:39 +03:00
neargye
25f32188ca update ci 2021-06-17 16:07:12 +03:00
sajimon
081a77b96a
Add ability to include external configuration header (#86)
* Add ability to include external configuration header

* Add documentation regarding MAGIC_ENUM_CONFIG_FILE
2021-06-17 16:06:27 +03:00
Flow86
8c130658e1
Add ARCH_INDEPENDENT so the generated cmake config files are really arch independent (#84)
closes #83
2021-05-27 12:08:01 +03:00
neargye
98ffd0e29b update ci 2021-05-27 11:10:10 +03:00
jimmyorourke
8deb7f96e7
fix typo in comment (#81) 2021-05-07 11:16:24 +03:00
neargye
5091dc6acf fix using leak 2021-04-28 13:10:59 +03:00
neargye
5b282dd4e8 fix range check 2021-04-22 12:43:04 +03:00