Maxime Coste
|
96884193dd
|
Remove redundant comparison operators
Since C++20 (a != b) get automatically rewritten as !(a == b) if
the != operator does not exist.
|
2023-10-25 20:40:04 +11:00 |
|
Maxime Coste
|
fb4cef5b61
|
Replace std::enable_if with requires
Introduce some concepts for enum and flags handling, goodbye and
thanks for all the fish std::enable_if.
|
2021-11-21 09:44:56 +11:00 |
|
Maxime Coste
|
30ab437777
|
Add more constexpr to flags wrapping functions
|
2017-10-06 13:48:01 +08:00 |
|
Maxime Coste
|
7a79cbbc81
|
Migrate code to c++14
|
2017-07-19 08:47:14 +02:00 |
|
Maxime Coste
|
db9b863222
|
Migrate WithBitOps template specialization to with_bit_ops function
This way we dont depend on knowing the base template to enable bit ops
on an enum type.
|
2017-03-15 18:00:58 +00:00 |
|
Maxime Coste
|
6d79ade019
|
Tweak RankedMatch behaviour and fix bug in its comparison function
casting TestableFlag<T> to UnderlyingType<T> was going through bool
conversion... Not sure how things worked earlier.
|
2016-11-14 19:39:35 +00:00 |
|
Maxime Coste
|
cbe38b2f96
|
Use flags and bit operations instead of bools in RankedMatch
full match is now the most important flag for comparison.
|
2016-08-29 23:56:22 +01:00 |
|
Maxime Coste
|
5e4f5cd2a0
|
Move enum option handling in enum.hh and refactor enum options
|
2015-11-20 09:06:53 +00:00 |
|
Maxime Coste
|
993e842fdf
|
Retreat ! go back to C++11 only code
This reverts commit b42de85031 .
|
2015-05-26 18:42:09 +01:00 |
|
Maxime Coste
|
b42de85031
|
Migrate code to c++14
|
2015-05-25 13:51:17 +01:00 |
|
Maxime Coste
|
4770d3d86c
|
Change flags operator& to return a value convertible both to flags and bool
|
2015-03-16 18:57:18 +00:00 |
|
Maxime Coste
|
71197c4641
|
Tweak flags implementation
|
2014-11-04 22:23:27 +00:00 |
|
Maxime Coste
|
3e797a3d15
|
centralize bit operation support for enum used as flags
|
2014-10-23 19:02:39 +01:00 |
|