mirror of
https://github.com/Neargye/magic_enum.git
synced 2026-01-09 23:34:23 +00:00
fix #215
This commit is contained in:
parent
1b1194bcd5
commit
159a35006d
2 changed files with 12 additions and 9 deletions
17
README.md
17
README.md
|
|
@ -61,11 +61,6 @@ Header-only C++17 library provides static reflection for enums, work with any en
|
|||
|
||||
## [Examples](example/example.cpp)
|
||||
|
||||
```cpp
|
||||
// For example color enum.
|
||||
enum class Color { RED = 2, BLUE = 4, GREEN = 8 };
|
||||
```
|
||||
|
||||
* Enum value to string
|
||||
|
||||
```cpp
|
||||
|
|
@ -82,6 +77,8 @@ enum class Color { RED = 2, BLUE = 4, GREEN = 8 };
|
|||
if (color.has_value()) {
|
||||
// color.value() -> Color::GREEN
|
||||
}
|
||||
|
||||
auto color_or_default = magic_enum::enum_cast<Color>(value).value_or(Color::NONE);
|
||||
```
|
||||
|
||||
* Integer to enum value
|
||||
|
|
@ -90,16 +87,18 @@ enum class Color { RED = 2, BLUE = 4, GREEN = 8 };
|
|||
int color_integer = 2;
|
||||
auto color = magic_enum::enum_cast<Color>(color_integer);
|
||||
if (color.has_value()) {
|
||||
// color.value() -> Color::RED
|
||||
// color.value() -> Color::BLUE
|
||||
}
|
||||
|
||||
auto color_or_default = magic_enum::enum_cast<Color>(value).value_or(Color::NONE);
|
||||
```
|
||||
|
||||
* Indexed access to enum value
|
||||
|
||||
```cpp
|
||||
std::size_t i = 1;
|
||||
std::size_t i = 0;
|
||||
Color color = magic_enum::enum_value<Color>(i);
|
||||
// color -> Color::BLUE
|
||||
// color -> Color::RED
|
||||
```
|
||||
|
||||
* Enum value sequence
|
||||
|
|
@ -122,7 +121,7 @@ enum class Color { RED = 2, BLUE = 4, GREEN = 8 };
|
|||
```cpp
|
||||
Color color = Color::RED;
|
||||
auto color_integer = magic_enum::enum_integer(color);
|
||||
// color -> 2
|
||||
// color -> 1
|
||||
```
|
||||
|
||||
* Enum names sequence
|
||||
|
|
|
|||
|
|
@ -93,6 +93,8 @@ constexpr optional<E> enum_cast(string_view value, BinaryPredicate p) noexcept(i
|
|||
if (color.has_value()) {
|
||||
// color.value() -> Color::GREEN
|
||||
}
|
||||
|
||||
auto color_or_default = magic_enum::enum_cast<Color>(value).value_or(Color::NONE);
|
||||
```
|
||||
|
||||
* Integer to enum value.
|
||||
|
|
@ -103,6 +105,8 @@ constexpr optional<E> enum_cast(string_view value, BinaryPredicate p) noexcept(i
|
|||
if (color.has_value()) {
|
||||
// color.value() -> Color::RED
|
||||
}
|
||||
|
||||
auto color_or_default = magic_enum::enum_cast<Color>(value).value_or(Color::NONE);
|
||||
```
|
||||
|
||||
## `enum_value`
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue