Bela Schaum
c1568c5b26
Constexpr switch names ( #142 )
2022-03-11 14:08:25 +02:00
Daniil Goncharov
74123638d1
Fix optional masos ( #160 )
2022-03-09 16:32:45 +02:00
Daniil Goncharov
b0c0e02bdc
add compile time enum_index ( #159 )
2022-03-09 10:07:09 +02:00
neargye
04a3d32d0f
clean-up
2022-03-08 14:05:43 +02:00
Pavel I. Kryukov
9d1cf196cf
Make enum_fuse typesafe ( fixes #143 ) ( #145 )
2022-03-08 10:38:19 +02:00
neargye
785b3f253d
clean-up
2022-03-08 10:35:13 +02:00
Bela Schaum
8267d2860b
remove std:: from optionals to enable again MAGIC_ENUM_USING_ALIAS_OPTIONAL ( #154 )
2022-03-05 21:56:17 +02:00
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